
Вопрос задан 15.04.2020 в 19:20.
Предмет Информатика.
Спрашивает Романенкова Маша.
1.Напишите программу, которая подсчитывает стоимость телеграммы, текст которой вводится с
клавиатуры. 2.Дана строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). Вывести строку, содержащую эти же слова (разделенные одним пробелом), но расположенные в обратном порядке.

Ответы на вопрос

Отвечает Кольцова Татьяна.
Program Tlg;
var
s:string;
i,n:integer;
p:real;
begin
Writeln('Введите текст телеграммы, разделяя слова ровно одним пробелом');
Readln(s);
Write('Укажите стоимость слова в рублях: '); Read(p);
n:=1;
for i:=1 to length(s) do
if s[i]=' ' then Inc(n);
Writeln('Стоимость телеграммы, руб: ',n*p:0:2)
end.
Тестовое решение:
Введите текст телеграммы, разделяя слова ровно одним пробелом
Грузите апельсины бочками братья Карамазовы
Укажите стоимость слова в рублях: 3.78
Стоимость телеграммы, руб: 18.90
program RevStr;
var
s,s1:string;
i,j,n:integer;
begin
Write('Исходная строка: '); Readln(s);
s:=' '+s;
n:=length(s);
i:=n; j:=n; s1:='';
while i>0 do begin
j:=i;
while (s[j]=' ') and (j>1) do Dec(j); { удалили пробелы }
i:=j;
while (s[j]<>' ') and (j>1) do Dec(j); { пробежали по непробелам }
if j>0 then s1:=s1+' '+Copy(s, j+1, i-j);
i:=j-1
end;
s1:=Copy(s1,2,length(s1)-1);
Writeln(s1)
end.
Тестовое решение:
Исходная строка: А роза упала на лапу Азора
Азора лапу на упала роза А
var
s:string;
i,n:integer;
p:real;
begin
Writeln('Введите текст телеграммы, разделяя слова ровно одним пробелом');
Readln(s);
Write('Укажите стоимость слова в рублях: '); Read(p);
n:=1;
for i:=1 to length(s) do
if s[i]=' ' then Inc(n);
Writeln('Стоимость телеграммы, руб: ',n*p:0:2)
end.
Тестовое решение:
Введите текст телеграммы, разделяя слова ровно одним пробелом
Грузите апельсины бочками братья Карамазовы
Укажите стоимость слова в рублях: 3.78
Стоимость телеграммы, руб: 18.90
program RevStr;
var
s,s1:string;
i,j,n:integer;
begin
Write('Исходная строка: '); Readln(s);
s:=' '+s;
n:=length(s);
i:=n; j:=n; s1:='';
while i>0 do begin
j:=i;
while (s[j]=' ') and (j>1) do Dec(j); { удалили пробелы }
i:=j;
while (s[j]<>' ') and (j>1) do Dec(j); { пробежали по непробелам }
if j>0 then s1:=s1+' '+Copy(s, j+1, i-j);
i:=j-1
end;
s1:=Copy(s1,2,length(s1)-1);
Writeln(s1)
end.
Тестовое решение:
Исходная строка: А роза упала на лапу Азора
Азора лапу на упала роза А


Топ вопросов за вчера в категории Информатика

Информатика 47

Информатика 33

Информатика 67

Информатика 18

Информатика 25

Информатика 563

Информатика 16
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili