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

Задача 8.1.
Заполните экран синим цветом. Введите строку с клавиатуры и выведите ее в
левом верхнем углу экрана, удалив из нее первые 3 и последние 3 символа.
Задача 8.2
Дополните предыдущую программу таким образом, чтобы во введенной строке
сначала подсчитывалось количество букв «а».

Показать ответ
Ответ:
RitaSolinoviskay234
RitaSolinoviskay234
12.01.2023 11:49
Var
m:array[0..1000] of longint;
n,i:longint;

procedure tf; 
var
q,j:longint; 
o:array[1..10] of longint; 
begin 
 write(m[1],' '); 
 q:=1; 
 o[q]:=m[1];
  i:=1;
  while q<>3 do 
  begin 
  i:=i+1; 
  
  if q=1 then
   if m[i]<>o[1] then
    begin
    write(m[i],' ');
    q:=q+1;
    o[q]:=m[i];
    end;
  
   if q=2 then
     if (m[i]<>o[1]) and (m[i]<>o[2]) then
       begin
       write(m[i]);
       q:=q+1;
       end; 
  end;
end;

procedure tm;
var
mk:array[1..10] of longint;
 begin
 for i:=1 to 3 do 
mk[i]:=0;

for i:=1 to n do
 if mk[1]<m[i] then 
  begin 
  mk[3]:=mk[2]; 
  mk[2]:=mk[1]; 
  mk[1]:=m[i]; 
  end else
 if (mk[2]<m[i]) and (m[i]<>mk[1]) then 
  begin 
  mk[3]:=mk[2]; 
  mk[2]:=m[i]; 
  end else
 if (mk[3]<m[i]) and (mk[2]<>m[i]) then mk[3]:=m[i];

write(mk[1],' ',mk[2],' ',mk[3]);
 end;

Скорее всего это можно было написать чище и оптимальнее, но вот моё решение на скорую руку 
0,0(0 оценок)
Ответ:
245mkl
245mkl
06.02.2022 17:01
Простейший вариант программы, предполагающий, что строка записана абсолютно верно и содержит только числа, соединенные знаком "плюс".

const
  digits=['0'..'9'];
var
  s,sn:string;
  i,err:integer;
  n,sum:longint;

begin
  Write('Введите числа, соединяя их знаком плюс: ');
  Readln(s);
  i:=2; sn:=s[1]; sum:=0;
  while i<=Length(s) do begin
    if s[i] in digits then sn:=sn+s[i]
    else begin
      Val(sn,n,err);
      sum:=sum+n;
      sn:=''
    end;
    Inc(i)
  end;
  Val(sn,n,err);
  sum:=sum+n;
  Writeln('Сумма равна ',sum)
end.

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