|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Программы на Delphi
Программы, фрагмент программ на Delphi
|
#2
|
|||
|
|||
Решение задачи 1.
Код:
var s:string; //текст с предложением a:integer; //кол-во восклицательных предложений i:integer; //для цикла begin s:=s+' '; //для того что бы считало последнее предложение //любым способом передаём выше предложение в переменную s a:=0; //первоначальное значение кол-ва "?" for I := 1 to length(s) do if (s[i]='?')and(s[i]=' ') then a:=a+1; //поиск количества вопросительных знаков writeln('кол-во вопросительных предложении: '+inttostr(a)); end; |
Этот пользователь сказал Спасибо Vladimr за это полезное сообщение: | ||
Dream32 (02.04.2021)
|
#3
|
|||
|
|||
Для задачи 2 нужно составлять отдельный список имён собственных с которыми потом будете сравнивать слова из вашего предложения.
Для задачи 3 нужно составлять отдельный список слов с правильным написание с которым потом будете сравнивать, и если этого слова нет в списке, то скорее всего слово написано с ошибкой. Для задачи 4 нужно составить список предлогов для каждого падежа. Далее нужно проверять слово идущее до проверяемого слова и если оно есть в списке то выводить падеж слова. Для задачи 5 составляем таблицу( в первой колонке английское слова, во второй колонке перевод на русский язык). Но перевод будет грубый и не будет учитывать смысл предложения и слова будут только в одном падеже. |
Этот пользователь сказал Спасибо Vladimr за это полезное сообщение: | ||
Dream32 (02.04.2021)
|
#4
|
|||
|
|||
А так мне очень интересно на каком курсе вам дают такие задачи? Или вы делайте кому-то задачи на заказ и получаете с них деньги, а тут вам помогают бесплатно?
|
#5
|
|||
|
|||
Это 2 курс, отличный план но я не такая
|
#6
|
|||
|
|||
И даже нет ни каких предположений и вариантов как это сделать? Или вам сразу нужен готовый ответ? Как потом будете объяснять при сдаче, что решение задачи не соответствует вашему уровню?
Как решение на задачу номер три. (Но решение грубое и можно сделать лучше, но и этот вариант работает) Код:
var pravilnie_slova:array [1..65535] of string; //список правильного написания слов s:string; //ваша строка которую проверяем i,j:integer; //для цикла s1:string; //слово из предложения b:integer; //для цикла проверки слова на правописание f:boolean; //показывает что данное слово есть в словаре slovo:array[0..65535] of integer; //позиции пробелов для определения слов a:integer; //кол-во слов begin //вводим строку любым известным способом s:=' '+s; // для того что бы посчитало первое слово s:=s+' '; //для того чтобы посчитало последнее слово a:=0; for I := 1 to length(s) do if (s[i]=' ')and(s[i+1]<>' ') then begin slovo[a]:=i; a:=a+1; end;//позиция пробела и кол-во слов в предложении //теперь в переменной "A" занесенно кол-во слов в предложении for I := 0 to a do begin s1:=copy(s,slovo[i]+1,slovo[i+1]-1); //сейчас сюда скопированно слово из предложения //далее проверяем есть ли данное слово в словаре f:=false; //первоначально указываем что данного слова нет в словаре for b := 1 to 65535 do if pravilnie_slova[b]=s1 then begin f:=true; break; end; //если слово есть в словаре то выходим из цикла //показывает что данное слово есть в словаре if f=false then writeln('слово написанно с ошибкой '+s1); end; end; |