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

Прога не работает, объясните почему и как это исправить. function stroka(s: string): string;
var
x,k,i:integer;
begin
for i:=1 to length(s) do
begin
val(copy(s,i,1),x,k);
if k<>0 then delete(s,pos(copy(s,i,1),s),1);
end;
stroka:=s;
end;

var
s1:string;
begin
read(s1);
write(stroka(s1));
end.

Показать ответ
Ответ:
mariy2104
mariy2104
27.03.2021 22:00

эту программу можно сократить:

var

 s1,s2,a:string;

begin

 Readln(s1);    

 for var i := 0 to 9 do a += IntToStr(i);  

 for var i := 1 to Length(s1) do

 for var k := 1 to 9 do

   if s1[i] = a[k] then s2 += s1[i];

write(s2);    

end.

for var i := 0 to 9 do a += IntToStr(i);

- заполнение массива числами от 0 до 9

for var i := 1 to Length(s1) do

 for var k := 1 to 9 do

   if s1[i] = a[k] then s2 += s1[i];

- двойной цикл проверяющий каждый символ в введенной строке, и в случае если символ = 1 из 10 цифр массива a прибавляет к переменной s2 этот символ

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота