Условныйоператор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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!