Вывести все числа из текста в порядке следования - Turbo Pascal
Формулировка задачи:
Вот программа:
Помогите пожалуйста. Из данного текста я выделил числа, но как теперь их упорядочить по убыванию? Процедурой val.
Решение задачи: «Вывести все числа из текста в порядке следования»
textual
Листинг программы
procedure obrabotka(x:mas; p:string); var i,h:word; z:boolean; begin i:=1; s:=true; max:=-f; while s do begin z:=false; for i:=1 to j do begin val(x[i],f,k); if k=0 then if f>max then begin max:= f; maxi:= i; z:=true; end; end; if z=false then s:=false else begin writeln(x[maxi]); x[maxi]:=''; end; max:=-max; maxi:=0; end; end;
Объяснение кода листинга программы
- В процедуре obrabotka объявлены три переменные: i, h и z. Переменная i инициализируется значением 1, переменная h устанавливается в значение -f, а переменная z устанавливается в значение true.
- Затем начинается цикл while, который выполняется до тех пор, пока значение переменной s остается истинным. Внутри цикла устанавливается значение переменной z в false.
- Далее следует вложенный цикл for, который выполняется от 1 до j (предполагается, что j - это некоторая величина). Внутри цикла выполняется вызов функции val(x[i],f,k), где x[i] - это i-ый элемент массива x, f - это переменная, которая получает значение, соответствующее i-ому элементу массива x, а k - это переменная, которая получает значение, соответствующее i-ому элементу массива x, если этот элемент является числом.
- Если k равно нулю, то значение переменной f увеличивается на максимальное значение, которое было найдено до этого (это значение хранится в переменной max). Также устанавливается значение переменной maxi равным i. Значение переменной z устанавливается в true.
- После окончания вложенного цикла for, если значение переменной z остается false, то значение переменной s устанавливается в false. Иначе, выводится значение переменной maxi (то есть, выводится последний найденный максимум). Значение переменной maxi устанавливается в 0. Значение переменной max устанавливается в -max.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д