Chimera-Syber Опубликовано 19 мая, 2009 Опубликовано 19 мая, 2009 Задача такова: дан набор строк (вводятся с клавиатуры). Строка формируется следующим образом: фамилия спортсмена (10 символов) и 6 результатов (каждый результат по 3 символа). Составить программу, определяющую спортсмена, занявшего первое место в соревнованиях. У меня находит результат самый высокий, но почему-то фамилию не выводит. Помогите найти ошибку: Program exe2; var str,res,fam,famfin:string; j,n,max,maxfin,i,zif,code:integer; begin {вводим количество строк} writeln ('vvedite kol-vo strok'); readln (n); {обнуляем нужные переменные} i:=1; fam:=''; max:=0; maxfin:=0; famfin:=''; for j:= 1 to n do begin {вводим строку} writeln ('vvedite stroky'); readln (str); repeat fam:=fam+str[i]; i:=i+1; until str[i]<>' '; str:=str+' '; i:=i+1; res:=''; while i<=length(str) do begin if str[i]<>' ' then res:=res+str[i] else begin {преобразуем переменную в число} val(res,zif,code); {сравниваем с текущим максимом в строке} if zif>max then max:=zif; res:=''; end; i:=i+1; end; {сравниваем с максимумом во всем тексте} if max>maxfin then begin maxfin:=max; famfin:=copy(fam,1,length(fam)); end; fam:=''; max:=0; i:=1; end; {выводим результат} writeln ('first place', famfin); writeln ('rezyltat', maxfin); end.
Chimera-Syber Опубликовано 20 мая, 2009 Автор Опубликовано 20 мая, 2009 Че никто не поможет? Может быть косяк самой программы, Turbo Pascal?
Chimera-Syber Опубликовано 20 мая, 2009 Автор Опубликовано 20 мая, 2009 здесь можно спросить. Спасибо.
C. Tantin Опубликовано 21 мая, 2009 Опубликовано 21 мая, 2009 Theo Walcott, уточни язык (компилятор). Просто в случае делфей можно попроще, с турбопаскалем - посложнее. А код твой может сегодня гляну, отпишу, что не так.
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти