HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра

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

Репутация: 272


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

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

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

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

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

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

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

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

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

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

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

Репутация: 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
С нами: 9526747

Репутация: 272


По умолчанию

Спасиб.
 

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

Репутация: 272


По умолчанию

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

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

Репутация: 272


По умолчанию

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

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

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

  #7  
Старый 18.05.2008, 22:45
Chuck
Banned
Регистрация: 23.07.2007
Сообщений: 87
С нами: 9896066

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

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

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

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

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

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

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

Репутация: 272


По умолчанию

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

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

Репутация: 272


По умолчанию

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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
мелочи, ПАскаль rubik-nerubik С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5 27.12.2007 21:20



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


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




ANTICHAT ™ © 2001- Antichat Kft.