Лабораторная работа №6
|
|
Написать программу, в которой используется оператор case для множественного выбора. Решение выложить в виде кода со ссылкой на онлайн-версию программы в PascalABC.
Задания.
1. Дан номер месяца (1 — январь, 2 — февраль, ...). Вывести название соответствующего времени года ("зима", "весна" и т.д.). 2. Дан номер месяца (1 — январь, 2 — февраль, ...). Вывести число дней в этом месяце для не високосного года. 3. Даны два целых числа: D (день) и M (месяц), определяющие правильную дату не високосного года. Вывести значения D и M для даты, предшествующей указанной. 4. Даны два целых числа: D (день) и M (месяц), определяющие правильную дату не високосного года. Вывести значения D и M для даты, следующей за указанной. 5. Дано целое число в диапазоне 20 – 69, определяющее возраст (в годах). Вы-вести строку — словесное описание указанного возраста, обеспечив правильное со-гласование числа со словом "год", например: 20 — "двадцать лет", 32 — "тридцать два года", 41 — "сорок один год". 6. Дано целое число в диапазоне 100 – 999. Вывести строку — словесное описание данного числа, например: 256 — "двести пятьдесят шесть", 814 — "восемьсот четырнадцать". 7. В восточном календаре принят 60-летний цикл, состоящий из 12-летних подциклов, обозначаемых названиями цвета: зеленый, красный, желтый, белый и черный. В каждом подцикле годы носят названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, курицы, собаки и свиньи. По номеру года вывести его название, если 1984 год был началом цикла — годом зеленой крысы. 8. Есть список студентов группы. Вводят номер студента по журналу. По номеру в журнале выдавать фамилию студента. Сделать программу на примере вашей группы. 9. Вводят фамилию. По первой букве фамилии, выдать номер этой буквы в алфавите. 10. Складывают два целых числа (числа от 0 до 10). Результат выдать в виде слова, например 2+3=пять) 11. Вводят вопросы вида (кто, кого, кому, кем, на ком) и фамилию, например "Петренко". Ответ выдавать в виде "Петренко", "Петренка", "Петренку" и т.д. 12. Дана таблица по которой можно определить какой у человека вес (недостаточный, нормальный или излишний) в зависимости от возраста. Вводят вес конретного человека. Определить к какой группе он относится. 13. Написать программу перевода оценок из двенадцати-бальной системы в четырех-бальную. 14. Зашифровать слово, переводя каждую букву в ее порядковый номер в алфавите. 15. Вводится температура воздуха и время года. Дать словесную характеристику погоде (например, теплый весенний день или морозный зимний день или холодный летний день и т.п.) 16. Дано целое число в диапазоне 1 – 5. Вывести строку — словесное описание соответствующей оценки (1 — "плохо", 2 — "неудовлетворительно", 3 — "удовлетворительно", 4 — "хорошо", 5 — "отлично"). 17. Арифметические действия над числами пронумерованы следующим образом: 1 — сложение, 2 — вычитание, 3 — умножение, 4 — деление. Дан номер действия и два числа A и B (В не равно нулю). Выполнить над числами указанное действие и вывести результат.
|
|
|
8. Есть список студентов группы. Вводят номер студента по журналу. По номеру в журнале выдавать фамилию студента. Сделать программу на примере вашей группы. Код program Mr_Pozitiv; (*('*****************************************************'); ('* laba #6 file: Mr_Pozitiv.pas == ver.1.0 *'); ('* exercise *'); ('* Malevanny V. A. Group I-14-1 Date: 23/09/14 *'); ('*****************************************************');*) var i : integer; label home; begin home: writeln('Введите номер студента из списка '); readln(i); case i of 1: writeln('Базалий Евгений'); 2: writeln('Безношенко Валентина'); 3: writeln('Бибичева Алена'); 4: writeln('Бутенко Ирина'); 5: writeln('Глушко Алена'); 6: writeln('Гранкин Виталий'); 7: writeln('Зазноба Ирина'); 8: writeln('Запухлый Никита'); 9: writeln('Кабачок Ольга'); 10: writeln('Малеванный Виталий'); 11: writeln('Онуфриенко Евгений'); 12: writeln('Панова Анастасия'); 13: writeln('Прокопенко Николь'); 14: writeln('Соломко Сергей'); 15: writeln('Фролова Ольга'); 16: writeln('Шабельник Михаил'); 17: writeln('Шкуренко Антон'); else writeln('Error'); end; goto Home; end. http://pascalabc.net/WDE/?file=03045.pas
perfect ;)
№ 2 | Автор: Mr_Pozitiv |
2014-09-23, 21:07 | Изменено: Mr_Pozitiv - Вт, 2014-09-23, 21:42
|
Репутация: [ + 6 ]
|
|
|
5. Дано целое число в диапазоне 20 – 69, определяющее возраст (в годах). Вы-вести строку — словесное описание указанного возраста, обеспечив правильное со-гласование числа со словом "год", например: 20 — "двадцать лет", 32 — "тридцать два года", 41 — "сорок один год". Код Program Selena; {*************************************************** * laba#5 file: lab5.pas == ver.1.0 * * exercise * * Glushko A. V. I-14-1 22.09.14 * ****************************************************}
Var a:Integer; Begin writeln('введите возраст от 20 до 69'); read(a); case a div 10 of 2:write('двадцать'); 3:write('тридцать'); 4:write('сорок'); 5:write('пятьдесят'); 6:write('шестьдесят'); end; case a mod 10 of 1:write(' один'); 2:write(' два'); 3:write(' три'); 4:write(' четыре'); 5:write(' пять'); 6:write(' шесть'); 7:write(' семь'); 8:write(' восемь'); 9:write(' девять'); end; case a mod 10 of 1:Write(' год'); 2..4:Write(' года'); 0,5..9:Write (' лет'); end; End.
http://pascalabc.net/WDE/?shared=Selena12/lab6.pas
Selena
№ 3 | Автор: Selena |
2014-09-23, 21:12 | Изменено: Selena - Вт, 2014-09-23, 21:15
|
Репутация: [ + 2 ]
|
|
|
4. Даны два целых числа: D (день) и M (месяц), определяющие правильную дату не високосного года. Вывести значения D и M для даты, следующей за указанной.
Код Program ira_butenko97; var M, D:integer; begin write ('Введите номер месяца='); readln (M); write ('Введите номер дня='); readln(D); D:=D+1; case M of 1,3,5,7,8,10,12: if (D<1) or (D>31) then ; 2: if (D<1) or (D>29) then ; 4,6,9,11:if (D<1) or (D>30) then ; else Writeln('ошибка'); end; begin M := M mod 12 + 1; D := 1 end; Writeln('следующая дата D=',D,' M=',M); end.
№ 4 | Автор: ira_butenko97 |
2014-09-24, 02:17 | Изменено: ira_butenko97 - Пт, 2014-09-26, 20:38
|
Репутация: [ + 4 ]
|
|
|
6. Дано целое число в диапазоне 100 – 999. Вывести строку — словесное описание данного числа, например: 256 — "двести пятьдесят шесть", 814 — "восемьсот четырнадцать". Код Program ELMpr_la6; {OoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOo o░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░o O░░Lab░work░#6░░file:ELMpr_la6.pas░==░ver.1.0░░O o░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░o O░░░░░░░░░░░░░░Laboratory work #6░░░░░░░░░░░░░░O o░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░o O░░©░Grankin░V.I.░Group░І-14-1░Date:░23/09/14░░O o░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░o OoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOo} Type Sto=100..999; Var a:Sto; Begin readln(a); case (a div 100) of 1:write('Сто '); 2:write('Двести '); 3:write('Триста '); 4:write('Четыреста '); 5:write('Пятьсот '); 6:write('Шестьсот '); 7:write('Семьсот '); 8:write('Восемьсот '); 9:write('Девятьсот '); end; if ((a mod 100) div 10)=1 then case (a mod 10) of 0:write('десять '); 1:write('одиннадцать '); 2:write('двенадцать '); 3:write('тринадцать '); 4:write('четырнадцать '); 5:write('пятнадцать '); 6:write('шестнадцать '); 7:write('семнадцать '); 8:write('восемнадцать '); 9:write('девятнадцать '); end else begin case ((a mod 100) div 10) of 2:write('двадцать '); 3:write('тридцать '); 4:write('сорок '); 5:write('пятьдесят '); 6:write('шестьдесят '); 7:write('семьдесят '); 8:write('восемьдесят '); 9:write('девяносто '); end; case (a mod 10) of 1:write('один'); 2:write('два'); 3:write('три'); 4:write('четыре'); 5:write('пять'); 6:write('шесть'); 7:write('семь'); 8:write('восемь'); 9:write('девять'); end; end; End.
El_Magnifico with <3
№ 5 | Автор: El_MAgnifico |
2014-09-24, 14:53 | Изменено: El_MAgnifico - Сб, 2014-09-27, 10:19
|
Репутация: [ + 8 ]
|
|
|
Задание: Дан номер месяца (1 — январь, 2 — февраль, ...). Вывести название соответствующего времени года ("зима", "весна" и т.д.).
Код program dimeshion; var a: integer; begin writeln('**************************************************'); writeln('* laba #6 file: di_6.pas == ver1.0 *'); writeln('* laba #6 *'); writeln('* Bazaliy E.V. Group: I-14-1 Date: 24/09/14 *'); writeln('**************************************************'); writeln('Введите номер месяца: '); readln(a); case a of 1,2,12: writeln('Зима'); 3,4,5: writeln('Весна'); 6,7,8: writeln('Лето'); 9,10,11: writeln('Осень'); else writeln('Такого месяца не существует!'); end; end.
|
|
|
Задание №2. Дан номер месяца (1 — январь, 2 — февраль, ...). Вывести число дней в этом месяце для не високосного года.
Код program beznoschenko; (************************************************* * laba #5 file:beznoschenko.pas==ver.7.0 * * laba#6 * *Beznoschenko Valentina I-14-1 25/09/2014 * *************************************************) Var X:integer; Begin Writeln('Введите номер месяца (от 1 до 12)'); Readln(X); Case x of 1,3,5,7,8,10,12:Writeln('31 день'); 2:Writeln('28 дней'); 4,6,9,11:Writeln('30 дней'); Else Writeln('!Error!'); End; end.
№ 7 | Автор: beznoschenko |
2014-09-25, 18:40 | Изменено: beznoschenko - Пт, 2014-09-26, 21:31
|
Репутация: [ + 2 ]
|
|
|
16. Дано целое число в диапазоне 1 – 5. Вывести строку — словесное описание соответствующей оценки (1 — "плохо", 2 — "неудовлетворительно", 3 — "удовлетворительно", 4 — "хорошо", 5 — "отлично"). Код Program torres; { ************************************************************* * laba#6 file: misha_shabelnik 97 pas == ver.1.0 * * Shabelnik M.V. Group I-14-1 Date: 25\09\14 * *************************************************************} var a: integer; begin writeln('Введите оценку'); readln(a); case a of 1: writeln('Плохо'); 2: writeln('Неудовлетворительно'); 3: writeln('Удовлетворительно'); 4: writeln('Хорошо'); 5: writeln('Отлично'); else writeln('Ошибка'); end; end.
№ 8 | Автор: torres |
2014-09-25, 19:01 | Изменено: torres - Сб, 2014-09-27, 19:01
|
Репутация: [ + 0 ]
|
|
|
4. Даны два целых числа: D (день) и M (месяц), определяющие правильную дату не високосного года. Вывести значения D и M для даты, следующей за указанной. Код Program ira_butenko97; var M, D , fl :integer; begin fl:=0; write ('Введите номер месяца='); readln (M); write ('Введите номер дня='); readln(D); case M of 1,3,5,7,8,10,12: if (D>1) and (D<31) then D:=D+1 else fl:=1; 2: if (D>1) and (D<28) then D:=D+1 else fl:=1; 4,6,9,11:if (D>1) and (D<30) then D:=D+1 else fl:=1; end; if fl=1 then begin M := M mod 12 + 1; D := 1; end; Writeln('следующая дата D=',D,' M=',M); end.
|
|
|
10. Складывают два целых числа (числа от 0 до 10). Результат выдать в виде слова, например 2+3=пять) Код var a,b,c : integer; label n; begin n: writeln('Введите числа '); readln(a,b); c:=a+b; case c of 1: writeln('один'); 2: writeln('два'); 3: writeln('три'); 4: writeln('четыре'); 5: writeln('пять'); 6: writeln('шесть'); 7: writeln('семь'); 8: writeln('восемь'); 9: writeln('девять'); 10: writeln('десять'); 11: writeln('одинадцать'); 12: writeln('двенадцать'); 13: writeln('тринадцать'); 14: writeln('четырнадцать'); 15: writeln('пятнадцать'); 16: writeln('шестнадцать'); 17: writeln('семнадцать'); 18: writeln('восемнадцать'); 19: writeln('девятнадцать'); 20: writeln('двадцать'); else writeln('Error'); end; goto n; end.
№ 10 | Автор: Awesome |
2014-09-29, 00:23 | Изменено: Awesome - Чт, 2014-10-02, 00:08
|
Репутация: [ + 2 ]
|
|
|
3. Даны два целых числа: D (день) и M (месяц), определяющие правильную дату не високосного года. Вывести значения D и M для даты, предшествующей указанной. Код program AlenaKit5; {***************************************************** * laba №6 file: AlenaKit.pas == ver.7.0 * * Bibicheva O.O I-14-1 28/09/14 * *****************************************************} type dni=1..31; mesyats=1..12; var d: dni; m:mesyats; begin write('Введите день '); Readln(d); write('Введите месяц '); Readln(m);
if (d>31)or(m>12) or (d>28)and (m=2) or (d>30) and (m=4)or (d>30) and (m=6)or (d>30) and (m=9)or (d>30) and (m=11) then write ('ошибка') else begin d:=d-1; if d=0 then begin m:=m-1; if m=0 then m:=12;
Case m of 1,3,5,7,8,10,12 : d:=31; 4,6,9,11 : d:=30; 2 : d:=28;
end; end;Writeln ('Предшествующая дата: ',d,'.',m) ; end;
end.
AlenaKit♥
№ 11 | Автор: AlenaKit |
2014-09-30, 17:54 | Изменено: AlenaKit - Чт, 2014-10-02, 16:52
|
Репутация: [ + 12 ]
|
|
|
Код Program ProjectX; {************************************************* * Laba#6 file: stx.pas==ver.7.0 * * Vyvid na ekran rezultativ diy nad chyslamy * * Shkurenko Anton I-14-1 01.10.14 * *************************************************} var i,A,B: integer; begin A:=6; B:=17; writeln('Введіть номер дії'); read(i); case i of 1:write('Сума= '); 2:write('Різниця= '); 3:write('Добуток= '); 4:write('Частка= '); end; case i of 1:write(A+B); 2:write(A-B); 3:write(A*B); 4:write(A/B); else writeln('Error'); end; end.
http://195.208.237.170/WDE....na6.pas
|
|
|
11. Вводят вопросы вида (кто, кого, кому, кем, на ком) и фамилию, например "Петренко". Ответ выдавать в виде "Петренко", "Петренка", "Петренку" и т.д. Код {***************************************** * laba#6 file:FORZOREZOR.pas==ver1.0 * * familiya * * Onufrienko E.M. I-14-1 1/10/14* * *****************************************}
var name:string; quest:integer; begin writeln('фамилия заканчивающайся на -ов'); readln(name); writeln('введите номер вопроса'); writeln('1-кто; 2-кого;3-кому;4-кем'); readln(quest); case quest of 1:writeln(name); 2:writeln(name+'а'); 3:writeln(name+'у'); 4:writeln(name+'ым'); end; end.
№ 13 | Автор: Forzorezor |
2014-10-01, 23:14 | Изменено: Forzorezor - Ср, 2014-10-01, 23:34
|
Репутация: [ + 4 ]
|
|
|
9. Вводят фамилию. По первой букве фамилии, выдать номер этой буквы в алфавите.
Код Program qwerty159; Var a :string; b :char; Label home; Begin home: Writeln('Введите Фаммилию '); Readln(a); b:=a[1]; Case b of 'А': writeln('1'); 'Б': writeln('2'); 'В': writeln('3'); 'Г': writeln('4'); 'ґ': writeln('5'); 'Д': writeln('6'); 'Е': writeln('7'); 'Є': writeln('8'); 'Ж': writeln('9'); 'З': writeln('10'); 'И': writeln('11'); 'І': writeln('12'); 'Ї': writeln('13'); 'Й': writeln('14'); 'К': writeln('15'); 'Л': writeln('16'); 'М': writeln('17'); 'Н': writeln('18'); 'О': writeln('19'); 'П': writeln('20'); 'Р': writeln('21'); 'С': writeln('22'); 'Т': writeln('23'); 'У': writeln('24'); 'Ф': writeln('25'); 'Х': writeln('26'); 'Ц': writeln('27'); 'Ч': writeln('28'); 'Ш': writeln('29'); 'Щ': writeln('30'); 'Ь': writeln('31'); 'Ю': writeln('32'); 'Я': writeln('33'); else writeln('error'); end; goto home; end.
Контрольный расчёт: Код Введите Фаммилию Іванов 12 Введите Фаммилию Ковальов 15
|
|
|
9. Вводят фамилию. По первой букве фамилии, выдать номер этой буквы в алфавите. Код Program qwerty159; Var a:string; BEGIN write('Фамилия: '); read(a); if((a[1] < '0') or (a[1] > '9')) then writeln (Ord (UpCase(a[1])) - 191) else writeln('Ошибка, вы ввели число'); end.
Контрольный расчёт: Код Фамилия: Иванов 9 Фамилия: Ковалев 11 Фамилия: Волков 3
|
|
|
Написать программу перевода оценок из двенадцати-бальной системы в четырех-бальную. Код program laba6 {***************************************} {* laba#6 file:Bonyasik1.pas==ver1.0 *} {* Prokopenko Nikol I-14-1 04.10.14 *} {***************************************}; var a:integer; label Start; begin Start: writeln('введите оценку a:'); readln(a); case a of 1,2,3: writeln('оценка 1'); 4,5,6: writeln('оценка 2'); 7,8,9: writeln('оценка 3'); 10,11,12: writeln('оценка 4'); else writeln('введены неверные данные'); end; goto Start; end.
http://195.208.237.170/WDE/?shared=Bonyasik/Bonyasik1.pas
№ 16 | Автор: Бонясик |
2014-10-13, 21:20 | Изменено: Бонясик - Пн, 2014-10-13, 22:36
|
Репутация: [ + 0 ]
|
|
|
15. Вводится температура воздуха и время года. Дать словесную характеристику погоде (например, теплый весенний день или морозный зимний день или холодный летний день и т.п.) Код program OlgaFrolova; (**************************************************** ** Laba #6 File Olga Frolova.pas == ver.1.0. ** *** Frolova O.R. Group I-14-1 Date 18.10.2014 *** ****************************************************)
var T:integer; {Температура воздуха} A,S,W,V,K:string; {Время года} begin S:='лето'; A:='осень'; W:='зима'; K:='весна'; write('Введите температуру воздуха(от -30 до 40 градусов):'); readln (T); write ('Введите время года:'); readln (V); begin if V=W then begin case T of -30..-11:write('Морозный зимний день'); -10..0:write ('Холодный зимний день'); 1..40:write ('Тёплый зимний день'); end; end; if V=K then begin case T of -30..0:write ('Морозный весенний день'); 1..9:write ('Холодный весенний день'); 10..15:write ('Тёплый весенний день'); 16..40:write ('Жаркий весенний день'); end; end; if V=S then begin case T of -30..9:write ('Холодный летний день'); 10..20:write ('Тёплый летний день'); 21..40:write ('Знойный летний день'); end; end; if V=A then begin case T of -30..0:write ('Морозный осенний день'); 1..10:write ('Тёплый осенний день'); 11..40:write ('Жаркий осенний день'); end; end; end;end. http://195.208.237.170/WDE/?shared=OlgaFrolova/Program6.pas
25101996
|
|
|
7. В восточном календаре принят 60-летний цикл, состоящий из 12-летних подциклов, обозначаемых названиями цвета: зеленый, красный, желтый, белый и черный. В каждом подцикле годы носят названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, курицы, собаки и свиньи. По номеру года вывести его название, если 1984 год был началом цикла — годом зеленой крысы. Код program Iren456 {***********************************} {* laba#5 file iren456.pas==ver1.0 *} {* Zaznoba Irina I-14-1 06.10.14 *} {***********************************}; var a,b,c:integer; begin writeln('enter a'); readln(a); b:= a-1983; while (b<0) do b:=a+60; while b>61 do b:=a-60; case b of 1..12:writeln('Зеленой(ого)'); 13..24:writeln('Красной(ого)'); 25..36:writeln('Желтой(ого)'); 37..48:writeln('Белой(ого)'); 49..60:writeln('Черной(ого)'); end; c:= b; while c>13 do c:=c-12; case c of 1:writeln('Крысы'); 2:writeln('Коровы'); 3:writeln('Тигра'); 4:writeln('Зайца'); 5:writeln('Дракона'); 6:writeln('Змеи'); 7:writeln('Лошади'); 8:writeln('Овцы'); 9:writeln('Обезьяны'); 10:writeln('Курицы'); 11:writeln('Собаки'); 12:writeln('Свиньи'); end; end. http://195.208.237.170/WDE/?shared=iren4562/laba6.pas
Ирина Зазноба
№ 18 | Автор: iren456 |
2014-11-01, 20:38 | Изменено: iren456 - Вс, 2014-11-02, 06:58
|
Репутация: [ + 0 ]
|
|
Ирина Зазноба
№ 18 | Автор: iren456 |
2014-11-01, 20:38 | Изменено: iren456 - Вс, 2014-11-02, 06:58
|
Репутация: [ + 0 ]
|
|
|
14. Зашифровать слово, переводя каждую букву в ее порядковый номер в алфавите.
Код program BF_laba_6; Var s :string; s1 :char; i :integer; Begin Writeln('Введите слово: '); Readln(s); writeln('Результат: '); for i:=1 to length(s) do Begin s1:=s[i]; Case s1 of 'a': write('1'); 'b': write('2'); 'c': write('3'); 'd': write('4'); 'e': write('5'); 'f': write('6'); 'g': write('7'); 'h': write('8'); 'i': write('9'); 'j': write('10'); 'k': write('11'); 'l': write('12'); 'm': write('13'); 'n': write('14'); 'o': write('15'); 'p': write('16'); 'q': write('17'); 'r': write('18'); 's': write('19'); 't': write('20'); 'u': write('21'); 'v': write('22'); 'w': write('23'); 'x': write('24'); 'y': write('25'); 'z': write('26'); else writeln('error'); end; end; end. http://195.208.237.170/WDE/?shared=Bun_Frith/BF_laba_6.pas
|
|
|
12. Дана таблица по которой можно определить какой у человека вес (недостаточный, нормальный или излишний) в зависимости от возраста. Вводят вес конретного человека. Определить к какой группе он относится. Код Uses Crt; Var a:char; Begin Write('Введите вес взрослого человека - '); Readln(a); Case a of '20'..'35': Writeln('Дистрофия'); '35'..'50': Writeln('Недостаточный вес'); '50'..'65': Writeln('Нормальный вес'); '65'..'80': Writeln('Избыточный вес'); '80'..'95':Writeln('Ожирение'); end; End.
kiriko
|
|
|