ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра

Вопрос(ы) по Турбо Паскаль 7.0
  #1  
Старый 18.05.2008, 21:36
Andres
Постоянный
Регистрация: 04.04.2008
Сообщений: 527
Провел на форуме:
1494768

Репутация: 272


По умолчанию Вопрос(ы) по Турбо Паскаль 7.0

Здравствуйте!

Изучаю учебник Турбо Паскаль 7.0 и у меня появился такой вопрос:

Чем отличаеться условный оператор If от Case?
В чем фишка каждого, и где они используються?

В учебнике все выложено как-то не очень понятно.

Буду очень благодарен за ответы!
 

  #2  
Старый 18.05.2008, 22:02
merax
Новичок
Регистрация: 03.07.2007
Сообщений: 18
Провел на форуме:
98311

Репутация: 28
По умолчанию

Он отличается тем, что здесь значение выражения не приводится к логическому типу, а просто сравнивается со значениями, перечисленными после ключевых слов case (значение1, значение 2 и т.д.). Если значение выражения совпало с каким-то вариантом, то выполняется соответствующий блок действий – от двоеточия после совпавшего значения до конца case или до первого оператора break, если таковой найдется.

Последний раз редактировалось merax; 18.05.2008 в 22:07..
 

  #3  
Старый 18.05.2008, 22:17
0verbreaK
Постоянный
Регистрация: 30.04.2008
Сообщений: 323
Провел на форуме:
379101

Репутация: 136
По умолчанию

Также посмотри на практический пример:

Код:
  

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;

Последний раз редактировалось 0verbreaK; 18.05.2008 в 22:20..
 

  #4  
Старый 18.05.2008, 22:18
Andres
Постоянный
Регистрация: 04.04.2008
Сообщений: 527
Провел на форуме:
1494768

Репутация: 272


По умолчанию

Спасиб.
 

  #5  
Старый 18.05.2008, 22:31
Andres
Постоянный
Регистрация: 04.04.2008
Сообщений: 527
Провел на форуме:
1494768

Репутация: 272


По умолчанию

Честно говоря с примера ничего не понял..
 

  #6  
Старый 18.05.2008, 22:39
Andres
Постоянный
Регистрация: 04.04.2008
Сообщений: 527
Провел на форуме:
1494768

Репутация: 272


По умолчанию

А вот смотрите пример:

if x=1
then write ('Понедельник')
else if x=2
then write ('Вторник')
и так дальше..

Тоесть если if не находит x=1 то идет по порядку до вторника (до if x=2)? Потом до среды и т.д?
 

  #7  
Старый 18.05.2008, 22:43
Red_Red1
Участник форума
Регистрация: 12.01.2007
Сообщений: 262
Провел на форуме:
4608122

Репутация: 874
Отправить сообщение для Red_Red1 с помощью ICQ
По умолчанию

Твой пример с кейси.
case x of
1 : write ('Понедельник')
2 : write ('Вторник')
...
и т.д.
end;

Последний раз редактировалось Red_Red1; 18.05.2008 в 22:47..
 

  #8  
Старый 18.05.2008, 22:45
Chuck
Banned
Регистрация: 23.07.2007
Сообщений: 87
Провел на форуме:
2147329

Репутация: 613
По умолчанию

Цитата:
Сообщение от Andres  
Тоесть если if не находит x=1 то идет по порядку до вторника (до if x=2)? Потом до среды и т.д?
х=1 - условие, if проверяет выполнение этого условия. Если оно не выполняется, то выполняется условие следующего блока, в данном случае блока else if. Да, потом до среды и т.д., если для них есть соответствующие условия.
 

  #9  
Старый 18.05.2008, 22:49
Andres
Постоянный
Регистрация: 04.04.2008
Сообщений: 527
Провел на форуме:
1494768

Репутация: 272


По умолчанию

Спасибо парни огромное Вы меня просветили больше чем автор, спасибо, реально!))))))))))))))))))))))))))))))))))) )))))))))))))))
 

  #10  
Старый 18.05.2008, 22:50
Andres
Постоянный
Регистрация: 04.04.2008
Сообщений: 527
Провел на форуме:
1494768

Репутация: 272


По умолчанию

P.s - Автор книги))
 
Закрытая тема



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Microsoft готовит Windows Mobile 6.1 и 7.0 Slanter Soft - Windows 3 05.05.2008 15:36
мелочи, ПАскаль rubik-nerubik С/С++, C#, Delphi, .NET, Asm 5 27.12.2007 21:20



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ