Задача 5 урок 17
Primary tabs
Задача 5 урок 17
Пользователь вводит в консоль строки вида (имя + произвольное число пробелов + балл):
Вася 485 Коля 555 Юра 61 .......... .... end // признак завершения ввода
(пока не введёт строку end) -- где слева указаны имена участников, а справа -- число баллов.
Используя массив строк и массив целых чисел (пусть оба массива будут максимальной длины =3) считайте отдельно имена и баллы и определите победителя, выведя его имя и полученный им балл.
var i, x, n, T, Code, max: integer; s, k, winner: string; a: array[1..3] of string; b: array[1..3] of integer; begin n:=1; //индекс массива while(s<>'end') do begin writeln('Enter name and points'); readln(s); if (s<>'end') then for i:=1 to length(s) do begin if Not((s[i]>='0')and(s[i]<='9')) AND (s[i]<>' ') then a[n]:=a[n]+s[i] //если не число и не пробел string else if (s[i]>='0')and(S[i]<='9') then k:=k+s[i]; //если число сохраняем в string if i=length(s) then //после последнего символа число(string) begin Val(k, T, Code); //преобразуем в integer b[n] := T; k:=''; end; end; inc(n); end; max := b[1]; if max < b[2] then max := b[2]; //определяем максимальный integer if max < b[3] then max := b[3]; for i:=1 to high(b) do if b[i]=max then //по индексу integer ищем значение string winner:=a[i]; writeln('The winner is ',winner,', scores = ',max); readln(); end.
- Log in to post comments
- 1659 reads
vedro-compota
Sun, 09/05/2021 - 12:37
Permalink
разбить на процедуры и
разбить на процедуры и функции
_____________
матфак вгу и остальная классика =)
boris68
Tue, 09/07/2021 - 22:17
Permalink
Исправлено
boris68
Wed, 09/08/2021 - 22:23
Permalink
Вариант с передачей массивов в процедуру
vedro-compota
Tue, 09/14/2021 - 22:31
Permalink
решение засчитано
решение засчитано
_____________
матфак вгу и остальная классика =)