Pascal abc задачи с решением

Все программы, код которых выложен здесь, являются работоспособными. На момент написания программ использовалась среда PascalABC.Net 3.0.

Содержание
  1. Содержание
  2. Обработка множеств [ править ]
  3. Пересечение множеств [ править ]
  4. Количество отрицательных элементов множества [ править ]
  5. Сортировки [ править ]
  6. Сортировка пузырьком [ править ]
  7. Шейкерная сортировка [ править ]
  8. Сортировка элементов, удовлетворяющих условию [ править ]
  9. Обработка массивов [ править ]
  10. Полные квадраты [ править ]
  11. Поменять местами максимальный и первый элементы [ править ]
  12. Вставить число перед нечётными элементами [ править ]
  13. Сдвиг элементов массива [ править ]
  14. Массив с максимумом максимумов [ править ]
  15. Слияние отсортированных массивов [ править ]
  16. Разделение отрицательных и положительных чисел с сохранением порядка [ править ]
  17. Обработка матриц без условных операторов [ править ]
  18. Замена отрицательных элементов на неотрицательные [ править ]
  19. Удвоить положительные элементы [ править ]
  20. Исключение нечетных элементов [ править ]
  21. Обнуление отрицательных чисел и удвоение положительных [ править ]
  22. Обработка массивов [ править ]
  23. Удаление лишних пробелов в строках массива [ править ]
  24. Локальные минимумы [ править ]
  25. Минимальный чётный и нечётный элементы [ править ]
  26. Задача о сумме элементов [ править ]
  27. Пары с элементом кратным 3 [ править ]
  28. Числа, оканчивающиеся на 5 [ править ]
  29. Обработка строк [ править ]
  30. Удаление лишних пробелов [ править ]
  31. Задача о школах [ править ]
  32. Худшие ученики [ править ]
  33. Вариант задачи 1 [ править ]
  34. Вариант задачи 2 [ править ]
  35. Абитуриенты, не допущенные к сдаче экзаменов [ править ]
  36. Задача о сотрудниках [ править ]
  37. Задача о сметанах [ править ]
  38. Задача о партиях [ править ]
  39. Задача о цифрах [ править ]

Содержание

Обработка множеств [ править ]

Пересечение множеств [ править ]

Количество отрицательных элементов множества [ править ]

Сортировки [ править ]

Сортировка пузырьком [ править ]

Шейкерная сортировка [ править ]

Описание алгоритма
  1. Переместить минимум в левый край сортируемой части массива, максимум — в правый.
  2. Уменьшить размер сортируемой части массива.
  3. Вернуться к шагу 1.

Сортировка элементов, удовлетворяющих условию [ править ]

Обработка массивов [ править ]

Полные квадраты [ править ]

Поменять местами максимальный и первый элементы [ править ]

Вставить число перед нечётными элементами [ править ]

Сдвиг элементов массива [ править ]

Сдвинуть элементы массива, который состоит из 4-х элементов так, чтобы из: a b c d получилось b c d a.

Массив с максимумом максимумов [ править ]

Вывести массив с максимумом максимумов двух массивов.

Слияние отсортированных массивов [ править ]

Разделение отрицательных и положительных чисел с сохранением порядка [ править ]

Переместить все отрицательные числа в левую половину массива, остальные — в правую. Порядок следования отрицательных и неотрицательных чисел должен быть сохранен.

Обработка матриц без условных операторов [ править ]

Замена отрицательных элементов на неотрицательные [ править ]

Удвоить положительные элементы [ править ]

Исключение нечетных элементов [ править ]

Обнуление отрицательных чисел и удвоение положительных [ править ]

Обработка массивов [ править ]

Удаление лишних пробелов в строках массива [ править ]

Использование x.ToWords() не эквивалентно x.Split().

Локальные минимумы [ править ]

Дан массив, содержащий 2014 положительных целых чисел. Напишите на одном из языков программирования программу, которая находит в этом массиве количество локальных минимумов. Локальным минимумом называется элемент массива, который меньше всех своих соседей. Например, в массиве из 6 элементов, содержащем числа 4, 6, 12, 7, 3, 8, есть два локальных минимума: это элементы, равные 4 и 3. Программа должна вывести общее количество подходящих элементов, значения элементов выводить не нужно. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.

Минимальный чётный и нечётный элементы [ править ]

Дан массив, содержащий неотрицательные целые числа, не превышающие 10 000. Необходимо вывести:

  1. минимальный чётный элемент, если количество чётных элементов не больше, чем нечётных;
  2. минимальный нечётный элемент, если количество нечётных элементов меньше, чем чётных.

Например, для массива из шести элементов, равных соответственно 4, 6, 12, 17, 9, 8, ответом будет 9 – наименьшее нечётное число, поскольку нечётных чисел в этом массиве меньше.

Задача о сумме элементов [ править ]

Дан целочисленный массив из 2000 элементов. Если сумма всех элементов массива чётная, нужно вывести количество нечётных (по значению) элементов массива, если нечётная – количество чётных. Например, для массива из 6 элементов, равных соответственно 2, 6, 12, 17, 3, 8, ответом будет 2 – количество нечётных элементов, так как общая сумма всех элементов чётна.

Пары с элементом кратным 3 [ править ]

Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от –10 000 до 10 000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести количество пар элементов массива, в которых хотя бы одно число делится на 3. В данной задаче под парой подразумевается два подряд идущих элемента массива.

Числа, оканчивающиеся на 5 [ править ]

Дан целочисленный массив из 40 элементов. Элементы массива могут принимать целые значения от 0 до 10000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести количество пар элементов массива, в которых десятичная запись хотя бы одного числа оканчивается на 5.

Обработка строк [ править ]

Удаление лишних пробелов [ править ]

Задача о школах [ править ]

На вход программе подаются сведения о номерах школ учащихся, участвовавших в олимпиаде. В первой строке сообщается количество учащихся N, каждая из следующих N строк имеет формат:

где – строка, состоящая не более чем из 20 символов, – строка, состоящая из 4-х символов (буква, точка, буква, точка), – не более чем двузначный номер. и , а также и разделены одним пробелом. Пример входной строки:

Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран информацию, из какой школы было меньше всего участников (таких школ может быть несколько). При этом необходимо вывести информацию только по школам, пославшим хотя бы одного участника. Следует учитывать, что N >= 1000.

Худшие ученики [ править ]

Вариант задачи 1 [ править ]

На вход программе подаются сведения о сдаче экзаменов учениками 9-х классов некоторой средней школы. В первой строке сообщается количество учеников N, которое не меньше 10, но не превосходит 100, каждая из следующих N строк имеет следующий формат:

, где – строка, состоящая не более чем из 20 символов, – строка, состоящая не более чем из 15 символов, – через пробел три целых числа, соответствующие оценкам по пятибалльной системе. и , а также и разделены одним пробелом. Пример входной строки:

Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран фамилии и имена трех худших по среднему баллу учеников. Если среди остальных есть ученики, набравшие тот же средний балл, что и один из трех худших, то следует вывести и их фамилии и имена.

Вариант задачи 2 [ править ]

Вывести имена трех худших учеников и среднее арифметическое их баллов.

Абитуриенты, не допущенные к сдаче экзаменов [ править ]

В некотором вузе абитуриенты проходят предварительное тестирование, по результатам которого могут быть допущены к сдаче вступительных экзаменов в первом потоке. Тестирование проводится по двум предметам, по каждому предмету абитуриент может набрать от 0 до 100 баллов. При этом к сдаче экзаменов в первом потоке допускаются абитуриенты, набравшие по результатам тестирования не менее 30 баллов по каждому из двух предметов. На вход программы подаются сведения о результатах предварительного тестирования. Известно, что общее количество участников тестирования не превосходит 500. В первой строке вводится количество абитуриентов, принимавших участие в тестировании, N. Далее следуют N строк, имеющих следующий формат:

Здесь – строка, состоящая не более чем из 20 символов; – строка, состоящая не более чем из 15 символов; – строка, содержащая два целых числа, разделенных пробелом, соответствующих баллам, полученным на тестировании по каждому из двух предметов. При этом и , и разделены одним пробелом. Примеры входных строк:

Напишите программу, которая будет выводить на экран фамилии и имена абитуриентов, потерпевших неудачу, то есть не допущенных к сдаче экзаменов в первом потоке. При этом фамилии должны выводиться в алфавитном порядке.

Задача о сотрудниках [ править ]

На вход программе подаются сведения о телефонах всех сотрудников некоторого учреждения. В первой строке сообщается количество сотрудников N, каждая из следующих N строк имеет следующий формат:

где – строка, состоящая не более чем из 20 символов, — строка, состоящая не более чем из 4-х символов (буква, точка, буква, точка), – семизначный номер, 3-я и 4, я, а также 5-я и 6-я цифры которого разделены символом «–». и , а также и разделены одним пробелом. Пример входной строки:

Сотрудники одного подразделения имеют один и тот же номер телефона. Номера телефонов в учреждении отличаются только двумя последними цифрами. Требуется написать как можно более эффективную программу, которая будет выводить на экран информацию, сколько в среднем сотрудников работает в одном подразделении данного учреждения.

Задача о сметанах [ править ]

В молочных магазинах города Х продается сметана с жирностью 15, 20 и 25 процентов. В городе X был проведен мониторинг цен на сметану. Напишите эффективную по времени работы и по используемой памяти программу, которая будет определять для каждого вида сметаны, сколько магазинов продают ее дешевле всего. На вход программе сначала подается число магазинов N. В каждой из следующих N строк находится информация в следующем формате:

где – строка, состоящая не более, чем из 20 символов без пробелов, – строка, состоящая не более, чем из 20 символов без пробелов, – одно из чисел – 15, 20 или 25, – целое число в диапазоне от 2000 до 5000, обозначающее стоимость одного литра сметаны в копейках. и , и , а также и разделены ровно одним пробелом. Пример входной строки:

Программа должна выводить через пробел 3 числа – количество магазинов, продающих дешевле всего сметану с жирностью 15, 20 и 25 процентов. Если какой-то вид сметаны нигде не продавался, то следует вывести 0. Пример выходных данных:

Задача о партиях [ править ]

Имеется список результатов голосования избирателей за несколько партий, в виде списка названий данных партий. На вход программе в первой строке подается количество избирателей в списке N. В каждой из последующих N строк записано название партии, за которую проголосовал данный избиратель, в виде текстовой строки. Длина строки не превосходит 50 символов, название может содержать буквы, цифры, пробелы и прочие символы. Пример входных данных:

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

Задача о цифрах [ править ]

На вход программе подается последовательность символов, заканчивающаяся точкой. Требуется написать программу, которая определяет, есть ли в этой последовательности десятичные цифры, и выводит наибольшее число, которое можно составить из этих цифр. Ведущих нулей в числе быть не должно (за исключением числа 0, запись которого содержит ровно одну цифру). Если цифр нет, программа должна вывести на экран слово «Нет», а если есть – слово «Да» и в следующей строчке искомое число. Например, если исходная последовательность была такая:

Задачи в сборнике классифицированы по основным разделам: линейные алгоритмы, разветвляющиеся алгоритмы, циклические алгоритмы, обработка массивов, обработка строк и создание графических изображений. После каждого раздела предлагаются задачи для самостоятельного решения. Внутри каждого раздела задачи по мере возможности расположены по возрастанию степени трудности.

Идёт приём заявок

Подать заявку

Для учеников 1-11 классов и дошкольников

Типовые задачи на Pascal с решениями

Задача: Написать программу которая по введеному номеру времени года(1-зима,2-весна,3-лето,4-осень)выдавала соответствующие этому времени года, месяцы количество дней в каждом из месяцев.

writeln ( ‘ Выберите время года :’ ) ; writeln ( ‘1- зима ‘ ) ;

writeln ( ‘2- весна ‘ ) ;

writeln ( ‘3- лето ‘ ) ;

writeln ( ‘4- осень ‘ ) ;

readln ( w ) ; case w of

writeln ( ‘ Зимние месяцы :’ ) ;

writeln ( ‘ декабрь — 31 день ‘ ) ;

writeln ( ‘ январь — 31 день ‘ ) ;

writeln ( ‘ февраль — 28(29) дней ‘ ) ;

writeln ( ‘ Весенние месяцы :’ ) ;

writeln ( ‘ март — 31 день ‘ ) ;

writeln ( ‘ апрель — 30 дней ‘ ) ;

writeln ( ‘ май — 31 день ‘ ) ;

writeln ( ‘Летние месяцы:’ ) ;

writeln ( ‘ июнь — 30 дней’ ) ;

writeln ( ‘ июль — 31 день’ ) ;

writeln ( ‘ август — 31 день ‘ ) ;

‘4’ : begin writeln ( ‘ Осенние месяцы :’ ) ;

writeln ( ‘ сентябрь — 30 дней ‘ ) ;

writeln ( ‘ октябрь — 31 день ‘ ) ;

writeln ( ‘ ноябрь — 30 дней ‘ ) ;

end ; else write ( ‘Такого времени года нет!’ ) ;

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

var a , b , c , k , s : integer ;

writeln ( ‘ Введите 3 целых числа :’ ) ; readln ( a , b , c ) ;

write ( ‘Введите целое число для проверки делимости k=’ ) ;

writeln ( ‘Число ‘ , k , ‘ делитель числа ‘ , a ) ;

writeln ( ‘Число ‘ , k , ‘ делитель числа ‘ , b ) ;

write ( ‘Число ‘ , k , ‘ делитель числа ‘ , c ) ;

if s = 0 then write ( ‘ Число ‘ , k , ‘ не является делителем чисел ‘ , a , ‘ ‘ , b , ‘ ‘ , c ) ; readln

Задача: Подсчитать количество отрицательных среди чисел a,b,c

var a , b , c : integer ;

clrscr; writeln ( ‘Введите 3 целых положительных и отрицательных числа:’ ) ;

readln ( a , b , c ) ;

k := ord ( a 0 ) + ord ( b 0 ) + ord ( c 0 ) ; если отрицательное , ord(true)=1

false, если не отрицательное, ord(false)=0>

write ( ‘Количество отрицательных=’ , k ) ; readln

Задача
Дан круг (X0, Y0, R) и точка (X, Y), где X0, Y0, R, X, Y — вещественные числа.
Определить, лежит ли эта точка внутри данного круга.
Пример
(0, 0, 1) и (0.5, 0.5)
Результат: TRUE
Вариант решения

var X0, Y0, R, X, Y: Real;

ReadLn (X0, Y0, R, X, Y);

WriteLn (Sqr (X — X0) + Sqr (Y — Y0)

Задача
Дан треугольник с вершинами (X1, Y1); (X2, Y2); (X3, Y3) и точка (X, Y). Все Xi, Yi — вещественные числа.
Определить, лежит ли эта точка внутри данного треугольника.
Пример
(0, 0); (3, 0); (0, 3) и (1, 1)
Результат: TRUE
Вариант решения

var X1, Y1, X2, Y2, X3, Y3, X, Y: Real;

S0, S1, S2, S3: Real;

function S (X1, Y1, X2, Y2, X3, Y3: Real): Real;

var a, b, c, p: Real;

a := Sqrt (Sqr (X1 — X2) + Sqr (Y1 — Y2));

b := Sqrt (Sqr (X1 — X3) + Sqr (Y1 — Y3));

c := Sqrt (Sqr (X3 — X2) + Sqr (Y3 — Y2));

S := Sqrt (p * (p — a) * (p — b) * (p — c));

ReadLn (X1, Y1, X2, Y2, X3, Y3, X, Y);

S0 := S (X1, Y1, X2, Y2, X3, Y3);

S1 := S (X, Y, X2, Y2, X3, Y3);

S2 := S (X1, Y1, X, Y, X3, Y3);

S3 := S (X1, Y1, X2, Y2, X, Y);

WriteLn (S0 + eps >= S1 + S2 + S3);

Задача
Дан прямоугольник, заданный двумя противоположными вершинами (X1, Y1); (X2, Y2) и точка (X, Y). Все Xi, Yi — вещественные числа.
Определить, лежит ли эта точка внутри данного прямоугольника.
Пример
(1, 1); (7, 4) и (4, 2)
Результат: TRUE
Вариант решения

var X1, Y1, X2, Y2, X, Y: Real;

ReadLn (X1, Y1, X2, Y2, X, Y);

WriteLn ((Abs (X1 — X2) = Abs (X1 — X) + Abs (X2 — X)) and

(Abs (Y1 — Y2) = Abs (Y1 — Y) + Abs (Y2 — Y)));

Задача
Дано число a (0..999999999).
Найти сумму цифер числа a.

Пример
a = 12345
Результат: 15

Задача
Дано число a (0..999999999).
Вывести это число в обратном порядке.
Пример
a = 12345
Результат: 54321
Вариант решения

Задача
Дано число a (0..999999999).
Определить, является ли оно простым.
Замечание: число называется простым, елси оно делится только на 1 и на самого себя.
Пример
a = 12345
Результат: FALSE
Вариант решения

var a, N: LongInt;

for N := 2 to a div 2 do

if a mod N = 0 then

Задача
Дано число a (0..999999999).
Разложить это число на простые множители.
Пример
a = 12345
Результат: 3 5 823
Вариант решения

var a, N: LongInt;

function Prost (X: LongInt): Boolean;

for N := 2 to X div 2 do

if X mod N = 0 then

if Prost (a) then

if (a mod N = 0) and Prost (N) then

Задача
Дано число S (0..999999999), обозначающее количество секунд.
Вычислить числа Hour, Minute (0..59), Second (0..59), показывающие число часов, минут и секунд соответственно в числе S.
Пример
S = 12345
Результат: 3:25.45
Вариант решения

Hour, Minute, Second: Integer;

Second := S mod 60;

Minute := S div 60;

Hour := Minute div 60;

Minute := Minute mod 60;

WriteLn (Hour, ‘:’, Minute, ‘.’, Second);

Задача
Дано натуральное число a (1..999999999).
Представить его в виде суммы квадратов двух натуральных чисел или сообщить о невозможности такого представления.
Пример
a = 29
Результат: 2, 5
Вариант решения

var a, n: LongInt;

for n := 1 to Trunc (Sqrt (a)) do

b := Sqrt (a — Sqr (n));

if (Int (b) = b) and (b > 0) then

WriteLn (n, ‘, ‘, Trunc (b));

Задача
Дано число a (1..999999999).
Определить, является ли оно совершенным.
Замечание: натуральное число называется совершенным, если оно равно сумме всех своих собственных делителей, включая 1.
Пример
a = 496
Результат: TRUE
Вариант решения

var a, i, S: LongInt;

for i := 2 to a div 2 do

if a mod i = 0 then Inc (S, i);

Задача
Даны два натуральных числа: m, n (1..999999999), образующие дробь вида m / n.
Сократить дробь, что бы числитель и знаменатель были взаимнопростые.
Пример
m = 256; n = 64
Результат: 4 1
Вариант решения

var m, n, i: LongInt;

if (m mod i = 0) and (n mod i = 0) then

Задача
Дана строка S, состоящая из латинских букв и пунктуационных знаков.
Преобразовать эту строку к верхнему регистру.
Пример
S = ‘Hello, World!’
Результат: HELLO, WORLD!
Вариант решения

for i := 1 to Length (S) do

Задача
Дана строка S, состоящая из латинских букв и пробелов.
Определить количество слов в данной строке.
Замечание: словом считается любая последовательность максимальной долины, состоящая из латинских букв и не содержащая пробелов.
Пример
S = ‘Hello World’
Результат: 2
Вариант решения

i, Count, State: Integer;

for i := 1 to Length (S) do

1: if UpCase (S[I]) in [‘A’..’Z’] then

2: if not (UpCase (S[I]) in [‘A’..’Z’]) then State := 1;

Задача
Дано 10 строк, вводимых с клавиатуры.
Вывести их в алфавитном порядке.
Пример
Marina
Aleksej
Sergej
Ivan
Peter
Lubov
Irina
Pavel
Natasha
Kostya

type TStrs = array[1..N] of string;

procedure Sort (var S: TStrs);

var i, j: Integer;

for i := 1 to N — 1 do

for j := i + 1 to N do

for i := 1 to N do

for i := 1 to N do

Задача
Дана строка S.
Определить, является ли она полиндромом.
Замечание: полиндромом называются строки, которые одинаково читаются как слева-направо, так и справа-налево.
Пример
S = ‘asdfgfdsa’
Результат: TRUE
Вариант решения

for i := 1 to Length (S) div 2 do

if S[i] <> S[Length(S)-i+1] then

Задача
Дана строка S, состоящая только из символов ‘0’ или ‘1’.
Подсчитать длинну самой длинной последовательности, состоящей только из ‘1’.
Пример
S = ‘111110011110110’
Результат: 5
Вариант решения

i, Len, MaxLen: Integer;

for i := 1 to Length (S) do

if Len > MaxLen then MaxLen := Len;

end else Inc (Len);

Задача
Дан массив A, состоящий из 100 натуральных чисел, заполненный случайным образом (каждый элемент находится в промежутка от 1 до 1000).
Отсортировать данный массив по неубыванию и вывести на экран.

var A: array[1..n] of Word;

i, j, tmp: Integer;

for i := 1 to n do

A[i] := Random (1000) + 1;

for i := 1 to n — 1 do

for j := n downto 2 do

for i := 1 to n do

Задача
Дан массив A, состоящий из 10 целых чисел.
Вывести все элементы, значение которых превосходит среднего арифметического элементов массива.
Пример
A: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Результат: 6, 7, 8, 9, 10
Вариант решения

var A: array[1..n] of Integer;

for i := 1 to n do

for i := 1 to n do

if A[i] > Sum div n then WriteLn (A[i]);

Задача
Дана матрица A размерностью 3 x 3, состоящая из целых чисел.
Найти разность между максимальным и минимальным элементами данной матрицы.
Пример
A:
12 44 37
8 25 32
19 28 41
Результат: 36
Вариант решения

var A: array[1..3,1..3] of Integer;

i, j, Max, Min: Integer;

for i := 1 to 3 do

for j := 1 to 3 do

for i := 1 to 3 do

for j := 1 to 3 do

if Min > A[i,j] then Min := A[i,j];

WriteLn (Max — Min);

Задача
Дана матрица A размерностью 5 x 5.
Заполнить ее следующим образом:
1 2 3 4 5
2 3 4 5 1
3 4 5 1 2
4 5 1 2 3
5 1 2 3 4
и вывести на экран.

var A: array[1..5,1..5] of Byte;

for i := 1 to 5 do

for j := 1 to 5 do

A[i,j] := 1 + (i + j — 2) mod 5;

for i := 1 to 5 do

for j := 1 to 5 do

Задача
Дана матрица A размерностью 5 x 5.
Заполнить ее следующим образом:
1 1 1 1 1
0 1 1 1 0
0 0 1 0 0
0 1 1 1 0
1 1 1 1 1
и вывести на экран.

var A: array[1..5,1..5] of Byte;

for i := 1 to 5 do

for j := 1 to 5 do

for i := 1 to 5 do

for j := 1 to 5 do

Задача
Дана матрица A размерностью 5 x 5.
Заполнить ее следующим образом:
1 2 3 4 5
10 9 8 7 6
11 12 13 14 15
20 19 18 17 16
21 22 23 24 25
и вывести на экран.

var A: array[1..5,1..5] of Byte;

for i := 1 to 5 do

for j := 1 to 5 do

if Odd (i) then A[i,j] := j + (i — 1) * 5

else A[i,j] := 6 — j + (i — 1) * 5;

for i := 1 to 5 do

for j := 1 to 5 do

Задача
Дана матрица A размерностью 5 x 3, состоящая из целых чисел.
Найти номер строки, в которой сумма элементов максимальна.
Пример
A:
1 2 3
0 0 0
5 5 5
2 8 6
2 4 3
Результат: 4
Вариант решения

var A: array[1..5,1..3] of Integer;

i, j, Sum, Max, Imax: Integer;

for i := 1 to 5 do

for j := 1 to 3 do

for i := 1 to 4 do

for j := 1 to 3 do

if (Sum > Max) or (i = 1) then

Задача: Написать программу которая по введеному номеру времени года(1-зима,2-весна,3-лето,4-осень)выдавала соответствующие этому времени года, месяцы количество дней в каждом из месяцев.

uses crt;

var w:char;

begin

writeln(‘Выберите время года:’);writeln(‘1-зима’);

readln(w);case w of

‘1’:begin

writeln(‘ декабрь — 31 день’);

writeln(‘ январь — 31 день’);

writeln(‘ февраль — 28(29) дней’);

end;

‘2’:begin

writeln(‘ март — 31 день’);

writeln(‘ апрель — 30 дней’);

writeln(‘ май — 31 день’);

end;

‘3’:begin

writeln(‘ июнь — 30 дней’);

writeln(‘ июль — 31 день’);

writeln(‘ август — 31 день’);

end;

‘4’:beginwriteln(‘Осенние месяцы:’);

writeln(‘ сентябрь — 30 дней’);

writeln(‘ октябрь — 31 день’);

writeln(‘ ноябрь — 30 дней’);

end;else write(‘Такого времени года нет!’);

end;

end.

  • Бондаренко Анна ИвановнаНаписать 2075 16.04.2018

Номер материала: ДБ-1459208

    16.04.2018 96
    16.04.2018 154
    16.04.2018 184
    16.04.2018 243
    16.04.2018 92
    16.04.2018 175
    16.04.2018 281
    16.04.2018 422

Не нашли то что искали?

Вам будут интересны эти курсы:

Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение редакции может не совпадать с точкой зрения авторов.

Ответственность за разрешение любых спорных моментов, касающихся самих материалов и их содержания, берут на себя пользователи, разместившие материал на сайте. Однако редакция сайта готова оказать всяческую поддержку в решении любых вопросов связанных с работой и содержанием сайта. Если Вы заметили, что на данном сайте незаконно используются материалы, сообщите об этом администрации сайта через форму обратной связи.

Оцените статью
Ремонт оргтехники
Добавить комментарий