М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
tima242
tima242
23.09.2021 08:13 •  Информатика

2. заполнить одномерный массив, состоящий из n элементов, числами, случайно выбранными из диапазона [a,b]. значение n описывается как константа, значения a и b с клавиатуры. вывести элементы массива на экран в строку. вычислить сумму элементов массива и вывести ее на экран.

👇
Ответ:
tinita15
tinita15
23.09.2021
Const n=10;
var
arr: array[1..n] of integer;
a, b, i, s: integer;
begin
readln(a, b);
randomize;
for i:=1 to n do
arr[i] := random(b-a+1)+a;
s:=0;
for i:=1 to n do
inc(s, arr[i]);
writeln(s);
end.
4,4(16 оценок)
Открыть все ответы
Ответ:
ponk4ik228778
ponk4ik228778
23.09.2021
Общее решение, позволяющее удалять из строк любой "мусор"

// PascalABC.Net 3.0, сборка 1066
procedure CheckString(var s:string; var n:integer);
var
  i:integer;
begin
  i:=Length(s);
  while i>0 do begin
    if not(s[i] in ['a'..'z']) then Delete(s,i,1);
    Dec(i)
  end;
  n:=Length(s)
end;

var
  s1,s2:string;
  i,p,n1,n2:integer;
begin
  Write('Введите первую строку: '); Readln(s1);
  CheckString(s1,n1);
  if n1=0 then Writeln('Введенная строка не содержит допустимых символов')
  else begin
    Write('Введите вторую строку: '); Readln(s2);
    CheckString(s2,n2);
    if n2=0 then Writeln('Введенная строка не содержит допустимых символов')
    else
      { теперь обе строки содержат только маленькие латинские буквы }
      if n1=n2 then begin
        for i:=1 to n1 do begin
          p:=Pos(s1[i],s2);
          if p=0 then Break
          else Delete(s2,p,1)
          end;
        if Length(s2)=0 then Writeln('Решение имеется')
        else Writeln('Решения нет')
        end
      else
        Writeln('Решения нет');
    end
end.

Тестовое решение:
Введите первую строку: this is my own deal!
Введите вторую строку: Тест: *is  now=l2ead  my   sthi?
Решение имеется

Также имеется современное решение, которому пока что в школах не учат:
// PascalABC.Net 3.0, сборка 1066
begin
  var s1:=ReadString('Введите первую строку: ').Where(x->x in ['a'..'z']);
  if s1.Count=0 then
    Writeln('Введенная строка не содержит допустимых символов')
  else begin
    var s2:=ReadString('Введите вторую строку: ').Where(x->x in ['a'..'z']);
    if s2.Count=0 then
      Writeln('Введенная строка не содержит допустимых символов')
    else
      if s1.Except(s2).Count>0 then Writeln('Решения нет')
      else Writeln('Решение имеется')
    end
end.
4,7(84 оценок)
Ответ:
mashenkalarchenko
mashenkalarchenko
23.09.2021
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
  var n:=ReadInteger('Введите четырехзначное число');
  Writeln('В числе');
  Writeln(n div 1000,' - тысяч');
  Writeln((n div 100) mod 10,' - сотен');
  Writeln((n mod 100) div 10,' - десятков');
  Writeln(n mod 10,' - единиц')
end.

Тестовое решение:
Введите четырехзначное число 4072
В числе
4 - тысяч
0 - сотен
7 - десятков
2 - единиц

// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
  var n:=ReadInteger('Введите трехзначное число');
  var s:=n div 100;
  var d:=(n div 10) mod 10;
  var e:=n mod 10;
  Writeln('Sum=',s+d+e);
  Writeln(e,d,s);
  Writeln('В числе');
  Writeln(e,' - сотен');
  Writeln(d,' - десятков');
  Writeln(s,' - единиц')
end.

Тестовое решение:
Введите трехзначное число 492
Sum=15
294
В числе
2 - сотен
9 - десятков
4 - единиц
4,4(48 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ