1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
условие - Дан непустой текст из цифр, за которым следует точка. Напечатать цифру, наиболее часто встречающуюся в этом тексте (если таких цифр несколько, напечатать любую из них).
мысли такие..может кто-то поправит пожалуйста?))
program V_20; var a:array [1..100] of char; k,i,j,m,p,n:integer;
begin writeln ('vvedite text iz cifr. po oknchaniju vvoda nazmite tochku'); k:=0;
условие - Дан непустой текст из цифр, за которым следует точка. Напечатать цифру, наиболее часто встречающуюся в этом тексте (если таких цифр несколько, напечатать любую из них).
мысли такие..может кто-то поправит пожалуйста?))
program V_20; var a:array [1..100] of char; k,i,j,m,p,n:integer;
begin writeln ('vvedite text iz cifr. po oknchaniju vvoda nazmite tochku'); k:=0;
repeat readln (a[i]); k:=k+1; until a[i]<>'.'; ...
привет, ducky Ммм.. Немного многовато ошибок.. )) Но ничего, прорвемся.. Во-первых, почему у тебя массив из char? У тебя только она цифра на строку может быть? Во-вторых, у тебя неправильное условие окончания ввода, нужно
until a[i]='.';
В третьих.. зачем тебе вообще массив? Разбор и подсчет можно делать прямо при вводе. Вот, смотри, я сделал только ввод и подсчет, без нахождения максимально повторяющейся цмфры.
var s: string; i: integer; c: char;
const f: array ['0'..'9'] of integer = (0,0,0,0,0,0,0,0,0,0);
begin WriteLn('Type in text of digits, ending with a period'); repeat ReadLn(s); for i:=1 to Length(s) do if s[i] in ['0'..'9'] then Inc(f[s[i]]) until Pos('.',s)>0; for c:='0' to '9' do WriteLn(c,': ',f[c]); ReadLn end.
И вот результат работы:
Running "c:\...\f\fp101211_ducky\fp101211_ducky_lapp.exe " Type in text of digits, ending with a period 12345 23456 34567890 123 2345 3456 23. 0: 1 1: 2 2: 5 3: 7 4: 5 5: 5 6: 3 7: 1 8: 1 9: 1
Разбирайся и задавай вопросы. Когда разберешься - добавим поиск максимума )). Okay?
--------------------
я - ветер, я северный холодный ветер я час расставанья, я год возвращенья домой