Задача 5 Урок 17
Primary tabs
Урок 17. Явное приведение типа в Паскаль -- преобразование строки в число
{17 - 5
Пользователь вводит в консоль строки вида (имя + произвольное число пробелов + балл):Вася 485 Коля 555 Юра 61 end // признак завершения ввода(пока не введёт строку end) -- где слева указаны имена участников, а справа -- число баллов.
Используя массив строк и массив целых чисел (пусть оба массива будут максимальной длины =3)
считайте отдельно имена и баллы и определите победителя, выведя его имя и полученный им балл.}
var s: string; i, n, max, win: integer; points: array [1..3] of integer; names,nums: array [1..3] of string; toggle: boolean; begin n:=1; while (s <> 'end') do begin writeln('write name and points'); readln(s); if (s = 'end') then break; toggle := true; for i:=1 to length(s) do begin if (s[i] <> ' ') then begin if (toggle = true) then names[n] := names[n] + s[i] // имена в массив else nums[n] := nums[n] + s[i] // очки в (строчный) массив end else if ((length(names) <> 0) and (toggle = true)) then toggle := false end; n :=n + 1; end; for i:=1 to high(nums) do val(nums[i], points[i]); // преобразование типа массива for i:=1 to high(points) do begin if (points[i] > max) then begin max := points[i]; win := i; // индекс победителя end end; writeln('winner name: ', names[win]); writeln('winner points: ', points[win]); readln(); end.
//write name and points //human 2 //write name and points //octopus 8 //write name and points //cat 4 //write name and points //end // //winner name: octopus //winner points: 8
- Log in to post comments
- 703 reads