Циклы. Расположить оценки студента в следующем порядке: пятерки, двойки, четверки, тройки - Turbo Pascal
Формулировка задачи:
Имеется n итоговых оценок студента. Расположить эти оценки в следующем порядке: пятерки, двойки, четверки, тройки. помогите решить
Решение задачи: «Циклы. Расположить оценки студента в следующем порядке: пятерки, двойки, четверки, тройки»
textual
Листинг программы
uses crt; const nmax=100; var a:array[1..nmax] of byte; n5, n2, n4, n3: integer; n,i,j,k,x:integer; begin clrscr; randomize; repeat write('Размер массива до ',nmax,' n='); readln(n); until n in [1..nmax]; n5:=0; n4:=0; n3:=0; n2:=0; writeln('Исходный массив:'); {вывод и одновременно подсчёт оценок} for i:=1 to n do begin a[i]:=2+random(4); if a[i]=5 then n5:=n5+1; if a[i]=2 then n2:=n2+1; if a[i]=4 then n4:=n4+1; if a[i]=3 then n5:=n3+1; write(a[i],' '); end; writeln; writeln; for i:=1 to n5 do a[i]=5; for i:=n5 to n2 do a[i]=2; for i:=n2 to n4 do a[i]=4; for i:=n5 to n do a[i]=3; writeln('Перестановка:'); for i:=1 to n do write(a[i],' '); readln end.
Объяснение кода листинга программы
В данном коде используется язык программирования Turbo Pascal. Задача заключается в расположении оценок студента в определенном порядке: пятерки, двойки, четверки, тройки. Переменные:
- nmax: максимальное количество оценок (до 100)
- a: массив, в котором будут храниться оценки (до 100 элементов)
- n5, n2, n4, n3: переменные для подсчета количества оценок каждого типа (пятерки, двойки, четверки, тройки)
- n, i, j, k, x: переменные для цикла и обработки массива
В начале кода с помощью функции randomize устанавливается генератор случайных чисел в нужное состояние. Затем в цикле повторяется следующее:
- Выводится сообщение о размере массива и запрашивается его значение.
- Пока значение не будет в пределах от 1 до nmax, продолжается цикл.
- Для каждого элемента массива выполняется следующее:
- Если элемент равен 5, то увеличивается значение переменной n5 на 1.
- Если элемент равен 2, то увеличивается значение переменной n2 на 1.
- Если элемент равен 4, то увеличивается значение переменной n4 на 1.
- Если элемент равен 3, то увеличивается значение переменной n3 на 1.
- Выводится значение элемента массива.
- После завершения цикла выводится сообщение о перестановке оценок в нужном порядке. Таким образом, данный код выполняет следующие действия:
- Создает массив для хранения оценок.
- Запрашивает у пользователя размер массива.
- Выводит исходный массив оценок.
- Переставляет оценки в нужном порядке.
- Выводит переставленный массив оценок.