Нужно срочно написать программу, до 7 часов утра в Paskale. Помогите пожалуйста.
№1 Написать программу, которая с помощью функции удаляет из строки последнее слово.
№2 Написать программу, которая с помощью функции выводит сообщение true, если цифры в строке расположены по убыванию и false в противоположном случае.
Если есть вопросы, напишите в коментариях.

//PascalABC.Net
function DelWord(s:string):string;
var
  i,n:integer;
begin
  n:=length(s);
  i:=n;
  repeat
    if i>=1 then Dec(i);
  until s[i]= ;
  Delete(s,i+1,n-i);
  DelWord:=s
end;

var
  st:string;
begin
  Write(Введите строку: ); Readln(st);
  Writeln(Результат: ,DelWord(st))
end.

Тестовое решение:
Введите строку: А роза упала на лапу Азора
Результат: А роза упала на лапу

//PascalABC.Net
function DescDigits(s:string):boolean;
var
  desc:boolean;
  i,n:integer;
  c1,c2:char;
begin
  n:=length(s);
  desc:=true;
  c1:=A; { главное, чтобы символ был "старше" любой цифры }
  i:=1;
  repeat
    c2:=s[i];
    if c2 in [0..9] then
      if c2    Inc(i)
  until (i>n) or (not desc);
  DescDigits:=desc
end;

var
  s:string;
begin
  Write(Введите строку: ); Readln(s);
  if DescDigits(s) then Writeln(true) else Writeln(false)
end.

Тестовое решение:
Введите строку: Пример строки с цифрами 98 по убыванию 7 6,5, так4тоже1можно!
true

Вариант первой программы для Borland Pascal 7.01
uses Crt;
function DelWord(s:string):string;
var
  i,n:integer;
begin
  n:=length(s);
  i:=n;
  repeat
    if i>=1 then Dec(i);
  until s[i]= ;
  Delete(s,i+1,n-i);
  DelWord:=s
end;

var
  st:string;
begin
  ClrScr; 
  Write(Введите строку: ); Readln(st);
  Writeln(Результат: ,DelWord(st));
  ReadKey
end.


Оцени ответ
Подпишись на наш канал в телеграм. Там мы даём ещё больше полезной информации для школьников!

Загрузить картинку