Паскаль(сортировка списка по фамилиям в порядке алфавита). есть , и пример решения. но в коде решения ошибка и поэтому сортировка не происходит, не дописан цикл, не понимаю как записать. условие - произвести сортировку списка студентов по фамилиям по алфавиту, . type st=record f: string; end; var a: array[1..100] of st; g: string; i,j: integer; begin write('n'); readln(n); for i: = 1 to n do begin write('введите фамилии студентов'); read(a[i].f); end; g: ='а'; for i: =1 to n do if a[i].f[1]=g then (здесь нужно дописать еще цикл) begin writeln(a[i].f); end; end.
Так как язык не указан, приведу пример на SWI-Prolog.
Код:
read_int(Int) :- read(Int), integer(Int).split_int_by_numbers(0, []) :- !.split_int_by_numbers(N, [Number|Ints]) :- Number is mod(N, 10), RestN is div(N, 10), split_int_by_numbers(RestN, Ints).test_to_div(_, []).test_to_div(N, [Number|Ints]) :- mod(N, Number) =:= 0, test_to_div(N, Ints). test(Int) :- split_int_by_numbers(Int, Numbers), test_to_div(Int, Numbers), write(Int), write(" - Yes!"), nl.test(Int) :- write(Int), write(" - No!"), nl.?- read_int(Int), test(Int).