![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Nika2010 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Продвинутые Сообщений: 3 Регистрация: 11.2.2010 Город: Минск ![]() |
Помогите решить задания девушке далёкой от программирования.
Задание 1 Работа с типом данных STRING (строка). Написать программу, которая считывает текст и выводит на экран только предложения, не содержащие числа. Задание 2 Задана квадратная матрица Y (5,5). Определить, где больше чётных элементов: выше или ниже главной диагонали ? Задание 3 Составить схему алгоритма и программу на языке Паскаль для решения нелинейного уравнения указанным итерационным методом, если задан интервал существования корня. В программе использовать подпрограммы. Метод половинного деления Формула кв корень из 1-0,4х^2 - arcsinX = 0 [0;1] - отрезок содержащий корень. Большое спасибо. |
![]() ![]() |
Nika2010 |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Продвинутые Сообщений: 3 Регистрация: 11.2.2010 Город: Минск ![]() |
Если несложно проверьте (делалось по похожему заданию с методички).
При нажатии F8 в turbo pascal 7.0 ошибок не выдаёт, но и желаемого результата тоже Задание 1 Работа с типом данных STRING (строка). Написать программу, которая считывает текст и выводит на экран только предложения, не содержащие числа. program kr; uses crt; var w,a:string; b,q,s,i,j,g:integer; begin clrscr; writeln('Please, read text.'); readln(a); s:=length(a); b:=0; q:=1; for j:=1 to s do if (copy(a,j,1)='.') or (copy(a,j,1)='!') or (copy(a,j,1)='?') then begin w:=copy(a,q,j-q+1); q:=j+1; g:=length(w); for i:=1 to g do if (copy(w,i,1)<>'1') and (copy(w,i,1)<>'2') and (copy(w,i,1)<>'3') and (copy(w,i,1)<>'4') and (copy(w,i,1)<>'5') and (copy(w,i,1)<>'6') and (copy(w,i,1)<>'7') and (copy(w,i,1)<>'8') and (copy(w,i,1)<>'0') and (copy(w,i,1)<>'9') then b:=b else b:=b+1; if b=0 then begin write(w); b:=0;end else b:=0; end; end. По второму заданию программа тоже не находит ошибки, но и нет даже приглашения к вводу матрицы. program kr; uses crt; var i,j,x,b,s,q:integer; a:array[1..5,1..5] of byte; begin clrscr; randomize; x:=5; b:=1;s:=0;q:=0; for i:=1 to x do for j:=1 to x do A[i,j]:=random(100); for i:=1 to x do begin for j:=1 to x do write(a[i,j],' ');writeln;end; for i:=1 to x-1 do begin for j:=1 to x-b do if (a[i,j])mod(2)=0 then s:=s+1;b:=b+1;end; writeln('Kolichestvo chetnih elementov vishe diagonali =',s); b:=5; for i:=2 to x do begin for j:=b to x do if (a[i,j])mod(2)=0 then q:=q+1;b:=b-1;end; writeln('Kolichestvo chetnih elementov nizhe diagonali =',q); if s>q then writeln('Kolichestvo chetnih elementov vishe diagonali bolshe kolichestva chetnih elementov nizhe diagonali'); if s<q then writeln('Kolichestvo chetnih elementov vishe diagonali menshe kolichestva chetnih elementov nizhe diagonali'); if s=q then writeln('Kolichestvo chetnih elementov vishe diagonali ravno kolichestvu chetnih elementov nizhe diagonali'); end. Проверьте плиз и обьясните что такое метод половинного деления и как записать его на паскале. Спасибо. |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 27.5.2025, 17:12 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru