УсловныйоператорCase(операторварианта)



ОператорвариантаCaseнеобходимвтехслучаях,когдавзависимостиотзначенийкакой-либопеременнойнадовыполнитьтеилииныеоператоры:

case<выражение>of

     <значение1>:<оператор1>;

     <значение2>:<оператор2>;

     <значение3>:<оператор3>;

              ……

else<операторN>

end;

<операторN>выполнитсятольковтомслучае,еслизначениевыражениянесовпадетнисоднимиз<значенийI>.ПрииспользованииоператораCaseнеобходимопомнитьотом,чтозначениевыраженияи<значенияI>должныбытьодноготипа.

 

2.Выполнитеследующиеупражнения:

Заданияуровня1

Упражнение1.Вычислитьчастноедвухцелыхчисел.Всвязистем,чтоделитьнанольнельзя,организуемконтрольвводаданных.

1.Наберитетекстпрограммы:

2.Запуститепрограммунавыполнениеипроверьтееёработ

3.Сохранитепрограммунасвоемдиске:

 

Упражнение2.Выяснить,являетсялиданноецелоечислочетным.Числовводитсясклавиатуры.

1.Наберитетекстпрограммы:

 

Комментарий:дляпроверкинанечетностьможноиспользоватьфункциюodd:

ifodd(n)thenwriteln(′нечетное′)elsewriteln(′четное′);

 

2.Запуститепрограммунавыполнениеипроверьтееёработу

4.Сохранитепрограмму

 

Упражнение3.Вывестинапечатьназваниеднянедели,соответствующеезаданномучислуD,приусловии,чтовмесяце31деньи1-ечисло–понедельник.

Длярешениязадачивоспользуемсяоперациейmod,позволяющейвычислитьостатокотделениядвухчисел,иусловием,что1-ечисло–понедельник.ЕсливрезультатеостатокотделениязаданногочислаDна7будетравен1,тоэтопонедельник,двойке–вторник,тройке–средаит.д.

 

1.Наберитетекстпрограммы:

ProgramD_NED;                            

var                                                          

D:byte;                                        

Begin                                               

write('ВведитечислоD=');

readln(D);

caseDmod7of                             {ВычисляетсяостатокотделенияDна7}

          {Взависимостиотполученногозначениянапечатьвыводитсяназваниеднянедели}

1:writeln(′ПОНЕДЕЛЬНИК′);

2:writeln(′ВТОРНИК′);

3:writeln(′СРЕДА′);

4:writeln(′ЧЕТВЕРГ′);

5:writeln(′ПЯТНИЦА′);

6:writeln(′СУББОТА′);

0:writeln(′ВОСКРЕСЕНЬЕ′)

{Еслирезультатуправляющеговыраженияпревышает6,товыдаетсясообщениеобошибке}

elsewriteln(′ОШИБКАПРИВВОДЕ!!!′)

end;

End.

 

2. Запуститепрограммунавыполнениеипроверьтееёработу:F9

3. Сохранитепрограмму.

3.Выполнитьсамостоятельно:

Заданияуровня2

1. Составьтепрограмму,котораясравниваетвозрастбратаисестрыивыводитсоответствующеесообщение.

2. Составитьпрограмму,проверяющую,принадлежитличисло,введенноесклавиатуры,интервалу(1;5).

3. Позаданномуномерумесяцаmвывестинапечатьназваниевременигода.

Заданияуровня3

1. Определитьпоназваниюднянеделивыходнойлиэтоилирабочийдень

2. Составьтепрограмму,котораявыводитнаэкранразличныеприветствиявзависимостиотвведенноговремени.Договоримся,чтоутродлитсяс8до12часов,день–с12до17часов,вечер–с17до23часовиночь–всеостальноевремя.Задачурешитьдвумяспособами:спомощьюусловногооператораиоператоравыбора.

3. РаботникзарабатываетXрублейза38часовсвоейработы.Емуплатятв1,5разабольшезакаждыйчассверх38часов.Какуюсуммуонполучит,еслиотработаетAчасов?

4. Взависимостиотназванияцветка,выдаватьккакомусезонугодаонотносится:

Весна:подснежник,ирис,нарциссы

Лето:ромашка,одуванчик,мак

Осень:астра,хризантема,флокс

5. Взависимостиотзнаказодиакавыдаватьккакойстихиионотносится:

Огонь(Овен,Лев,Стрелец)

Воздух(Весы,Водолей,Близнецы)

Вода(Рак,Скорпион,Рыбы)

Земля(Козерог,Телец,Дева)

6. Составитьпрограмму,котораяпроверяет,можетлисуществоватьтреугольниксзаданнымисторонами.Известно,чтосуммадвухлюбыхсторондолжнабытьбольшетретьей.

7. Даныцелыечислаa,b,c.Еслиa≤b≤c,товсечислазаменитьнаименьшимизних,впротивномслучаесменитьзнаккаждогочисла.

8. Составитьпрограммудляопределенияподходящеговозрастакандидатурыдлявступлениявбрак,используяследующеесоображение:возрастдевушкиравенполовиневозрастамужчиныплюс7,возрастмужчиныопределяетсясоответственно,какудвоенныйвозрастдевушкиминус14.

9. Составьтепрограммурешенияквадратногоуравнениясиспользованиемсложныхусловий.

10. Составьтепрограмму,предназначеннуюдлявычислениязначенияпеременнойy,где причетныхзначенияхx;y=x2–6призначенияхx,кратных5;y=0вовсехостальныхслучаях.

11. Занятиявначальныхклассахотменяютсявтехслучаях,когдатемпературавоздуханевыше–25градусов,атакжеприветренеменее7м/ситемпературеневыше–20градусов.Поутреннейсводкепогодыопределить,пойдутлидетившколу.

12. Составьтепрограмму,котораядляцелогочислаk(от1до99),введенноговами,напечатаетфразу«Мнеkлет»,приэтомвнужныхслучаяхслово«лет»заменяянаслово«год»или«года».

13. Написатьпрограмму,котораяпономеруднянедели(натуральномучислуот1до7)выдаетвкачестверезультатаколичествоуроковвВашейгруппе.

14. Масса8литровбензина5,68кг.ЦистернаимеетобъемВм3.Хватитлиее,чтобывместитьАтбензина?

15. Вводятсянатуральныеn,m(n<m).Определить,сколькосредичиселn,n+1,…,mтаких,которыеявляютсяномерамивисокосныхгодов.Указание.Всовременном(григорианском)календарекаждыйгод,номеркоторогоделитсяна4,являетсявисокосным,заисключениемтех,которыеделятсяна100инеделитсяна400.Например,1900год-невисокосный,2000год-високосный.

16. Напишитепрограмму,котораяпривводелатинскойпрописнойбуквывыводитнаэкрантакуюжебукву,нострочную.

Указание:воспользуйтесьтемфактом,чтовселатинскиепрописныебуквырасположенывкодовойтаблицеподряд,поалфавиту,начинаяссимвола‘A’скодом65.Строчныебуквытакжерасположеныпоалфавиту,начинаяссимвола‘a’скодом97.

Подсказка:длярешенияобратнойзадачисуществуетфункцияUpCase,котораяпреобразуетстрочныебуквылатинскогоалфавитавпрописные,нонеизменяетдругие,тоесть:UpCase(‘p’)=’P’;

    UpCase(‘P’)=’P’;

    UpCase(‘+’)=’+’;

17. СклавиатурывводитсянатуральноечислоN.ВывестинаэкранN=4k+m,гдеk–соответствующеечастноеиm-остатокотделенияна4.

18. ЗаданыразмерыА,ВпрямоугольногоотверстияиразмерыХ,Y,Zкирпича.Определитьпройдетликирпиччерезотверстие.

19. Составитьпрограмму,котораяпроверялабы,неприводитлисуммированиедвухцелыхчиселАиВкпереполнению(т.е.крезультатубольшему,чем32767).Еслибудетпереполнение,тосообщитьобэтом,иначевывестисуммуэтихчисел.

20. Определить,делителем,какихчиселa,b,cявляетсячислоk.

21. Составитьпрограмму,осуществляющуюпереводвеличинизрадианноймерывградуснуюилинаоборот.Программадолжназапрашивать,какойпереводнужноосуществить,ивыполнятьуказанноедействие.

22. ИзвестныплощадькругаS и площадьквадратаS1.Определить:поместитсяликвадратвкруг?

23. Единицы массы пронумерованы следующим образом: 1 — килограмм, 2 — миллиграмм, 3 — грамм, 4 — тонна. Дан номер единицы массы и масса тела M в этих единицах (M - вещественное число). Вывести массу данного тела в килограммах.

Окончаниеработы:

1. Сохранитьсозданныепрограммы.

2. Подготовитьотчет.

3. Показатьработупреподавателю.

Контрольныевопросы:

1. СформулируйтеправилазаписиоператораIF.

2. ЧтотакоевложенныйоператорIF?

3. Чтопредставляетсобойоператорварианта?

4. Впрограммахкакоготипаиспользуетсяоператорварианта?

5. Константыкакоготипамогутбытьиспользованывоператореварианта?

6. Какоесоответствиедолжнобытьмеждувыражениемоператоравариантаиегоконстантами?


Дата добавления: 2018-04-04; просмотров: 320; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!