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

Решите задачу используя одномерный массив создать из заданного целочисленного массива размером 30 элементов другой массив который будет содержать модули знать значение элементов первого массива не используя специальные функции вычисляющий модуль числа Напиши названия операторов использованных поварами​


Решите задачу используя одномерный массив создать из заданного целочисленного массива размером 30 эл

👇
Открыть все ответы
Ответ:
lizayka2001
lizayka2001
29.11.2020
1. Программа, создающая файл

var
  f:file of integer;
  i,k:integer;
begin
  Randomize;
  Assign(f,'in.dat'); Rewrite(f);
  for i:=1 to 20 do begin
    k:=Random(99)+1;
    Write(f,k)
    end;
  Close(f)
end.

Тестовое решение
38 35 14 46 92 49 51 48 84 90 26 14 38 79 82 77 7 24 94 13

2. Основная программа

uses Crt;
const
  nn=100;
var
  i,j,k,n:integer;
  fin,fout:file of integer;
  a:array[1..nn] of integer;
  dub:boolean;
begin
  ClrScr;
  Assign(fin,'in.dat'); Reset(fin);
  Read(fin,k);
  if not eof(fin) then begin
    n:=1; Write(k,' '); a[n]:=k
    end
  else n:=0;
  while (not eof(fin)) and (n<=nn) do begin
    Read(fin,k); Write(k,' ');
    j:=1; dub:=false;
    while (j<=n) and (not dub) do begin
      dub:=(a[j]=k); Inc(j);
      end;
    if not dub then begin Inc(n); a[n]:=k; Inc(j) end
    end;
  Writeln;
  Close(fin);
  for i:=1 to n do Write(a[i],' ');
  Writeln; Writeln('n=',n);
  Assign(fout,'out.dat'); Rewrite(fout);
  Write(fout,n); Close(fout);
  ReadKey
end.

Тестовое решение:
38 35 14 46 92 49 51 48 84 90 26 14 38 79 82 77 7 24 94 13
38 35 14 46 92 49 51 48 84 90 26 79 82 77 7 24 94 13
n=18

В качестве бонуса - решение этой же задачи в современной системе программирования PascalABC.NET.

// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
  var fin,fout:file of integer;
  Reset(fin,'in.dat');
  var k:integer;
  var a:=new integer[fin.FileSize];
  var n:=0;
  while not eof(fin) do begin
    Read(fin,k); a[n]:=k; Inc(n)
    end;
  Close(fin);
  a.Println;
  var b:=a.ToHashSet;
  b.Println; Writeln('n=',b.Count)
end.

Тестовое решение
38 35 14 46 92 49 51 48 84 90 26 14 38 79 82 77 7 24 94 13
38 35 14 46 92 49 51 48 84 90 26 79 82 77 7 24 94 13
n=18

И вопрос: для чего давать школьникам, 9/10 из которых никогда не будут программистами, устаревшие и громоздкие, сложные для понимания, написания и отладки системы программирования? Чтобы показать, "как все это сложно"?
4,7(67 оценок)
Ответ:
linolino
linolino
29.11.2020
1. Написать программу нахождения площади прямоугольного треугольника. Длины катетов треугольника задаются с клавиатуры. 
2. Написать программу вычисления периметра трапеции, длины сторон которой вводятся с клавиатуры. 
3. Написать программу для нахождения пути, пройденного автомобилем за заданное время. Значение средней скорости и время движения задаются с клавиатуры. 
4. Написать программу для решения следующей задачи: скорость первого автомобиля V1 км/ч, второго – V2 км/ч, расстояние между ними S км. Какое расстояние будет между ними через T часов, если автомобили движутся в разные стороны? Значения V1, V2 и S задаются с клавиатуры. 
5. Написать программу для решения следующей задачи: скорость первого автомобиля V1 км/ч, второго – V2 км/ч, расстояние между ними S км. Какое расстояние будет между ними через T часов, если автомобили движутся навстречу друг другу? Значения V1, V2 и S задаются с клавиатуры. 
6. Напишите программу вычисления идеального веса человека по формуле: Ид. Вес= Рост в см –100. Значение роста вводится с клавиатуры. 
7. Вы положили деньги в сбербанк на депозит на три месяца из расчета 3% годовых. Напишите программу, которая запрашивает сумму, внесенную на счет, и вычисляет причитающуюся вам сумму через три месяца.
4,6(77 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ