Просмотр полной версии : Вопрос(ы) по Турбо Паскаль 7.0
Здравствуйте!
Изучаю учебник Турбо Паскаль 7.0 и у меня появился такой вопрос:
Чем отличаеться условный оператор If от Case?
В чем фишка каждого, и где они используються?
В учебнике все выложено как-то не очень понятно.
Буду очень благодарен за ответы!
Он отличается тем, что здесь значение выражения не приводится к логическому типу, а просто сравнивается со значениями, перечисленными после ключевых слов case (значение1, значение 2 и т.д.). Если значение выражения совпало с каким-то вариантом, то выполняется соответствующий блок действий – от двоеточия после совпавшего значения до конца case или до первого оператора break, если таковой найдется.
0verbreaK
18.05.2008, 22:17
Также посмотри на практический пример:
case uMsg of
WM_COMMAND : begin
if wParam = IDC_CLOSE then End_Work;
if wParam = IDC_ABOUT then
MessageBox(hWin, AboutText, AboutCapt, 0);
if (LOWORD(wParam) = IDC_NAME) and
(HIWORD(wParam) = EN_CHANGE) then Generate;
end;
WM_INITDIALOG : begin
hIcon := LoadIcon(Inst, 'MAINICON');
SendMessage(hWin, WM_SETICON, ICON_SMALL, hIcon);
SendMessage(hWin, WM_SETICON, ICON_BIG, hIcon);
SetWindowText(hWin, WindowTitle);
hWnd := hWin;
end;
WM_DESTROY,
WM_CLOSE : End_Work;
end;
Честно говоря с примера ничего не понял..:(
А вот смотрите пример:
if x=1
then write ('Понедельник')
else if x=2
then write ('Вторник')
и так дальше..
Тоесть если if не находит x=1 то идет по порядку до вторника (до if x=2)? Потом до среды и т.д?
Red_Red1
18.05.2008, 22:43
Твой пример с кейси.
case x of
1 : write ('Понедельник')
2 : write ('Вторник')
...
и т.д.
end;
Тоесть если if не находит x=1 то идет по порядку до вторника (до if x=2)? Потом до среды и т.д?
х=1 - условие, if проверяет выполнение этого условия. Если оно не выполняется, то выполняется условие следующего блока, в данном случае блока else if. Да, потом до среды и т.д., если для них есть соответствующие условия.
Спасибо парни огромное Вы меня просветили больше чем автор, спасибо, реально!))))))))))))))))))))))))))))))))))) )))))))))))))))
смени книжку, где написано понятно
De-visible
19.05.2008, 00:00
Вопрос решен....ЗАКРЫТО
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot