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

Впаскале: создать текстовый файл f и g, компанентами которого являются случайные целые числа. записать в файл h сначала компаненты файла f, а затем компоненты файла g с сохранением порядка.

👇
Ответ:
ĪīDanilaīī
ĪīDanilaīī
23.11.2020

const
  n = 10; //количество чисел, которое нужно сформировать
  First = -10; //С какого числа должны генерироваться случайные числа
  Second = 15;{По какое число должны генерироваться случайные числа(например в данном случае случайные числа генерируются в диапазоне от - 10 до 15)}


var
  f, g, h: text;
  i: integer;
  Number: array [1..n] of integer;{Массив, в который записываются числа, считанные из файлов}

begin
  randomize;
  assign(f, 'f.txt');//Инициализируем файл f
  assign(g, 'g.txt');//Инициализируем файл g
  assign(h, 'h.txt');//Инициализируем файл h
  rewrite(f);//Открываем файл f для записи
  for i:= 1 to n div 2 do write(f, random(abs(First) + abs(Second)) + First , ' ');{Первую половину чисел записываем в файл f}
  close(f);//Закрываем файл f
  rewrite(g);//Открываем файл g для записи
  for i:= (n div 2) + 1 to n do write(g, random(abs(First) + abs(Second)) + First, ' ');{Вторую половину случайно сгенерированных чисел записываем в файл g}
  close(g);//Закрываем файл g
  reset(f);//Открываем файл f для считывания
  for i:= 1 to n div 2 do read(f, Number[i]);{Первую половину чисел считываем из файла f в массив}
  close(f);//Закрываем файл f
  reset(g);//Открываем файл g для считывания
  for i:= (n div 2) + 1 to n do read(g, Number[i]);{Вторую половину чисел считываем из файла g в массив}
  close(g);//Закрываем файл g
  rewrite(h);//Открываем файл h для записи
  for i:= 1 to n div 2 do write(h, Number[i], ' ');{Первую половину считанных чисел из массива записываем в файл h}
  writeln(h);//Перевод на новую строку в файле h
  for i:= (n div 2) + 1 to n do write(h, Number[i], ' ');{Вторую половину считанных чисел из массива записываем в файл h}
  close(h);//Закрываем файл h
end.

Все файлы создаются там же, где находится файл программы.

      

4,4(48 оценок)
Открыть все ответы
Ответ:
маріна2017
маріна2017
23.11.2020
Первое 

var
a:array[1..100] of integer;
i,j:integer;
procedure swap(var x,y: integer);
   var t: integer;
 begin
    t := x;
    x := y;
    y := t
 end;
begin
for i:=1 to 100 do a[i]:=random(100);
for j:=1 to 99 do
for i:=1 to 100-j do if a[i] > a[i+1] then swap(a[i],a[i+1]);
for i:=2 to 99 do if (a[i]=a[i+1]) or (a[i]=a[i-1]) then writeln('a[',i,']=',a[i]);
end.

Второе

var
a:array[1..100] of integer;
i,j:integer;
procedure swap(var x,y: integer);
   var t: integer;
 begin
    t := x;
    x := y;
    y := t
 end;
begin
for i:=1 to 100 do a[i]:=random(100);
for j:=1 to 99 do
for i:=1 to 100-j do if a[i] > a[i+1] then swap(a[i],a[i+1]);
if a[1]<>a[2] then writeln('a[1]=',a[1]);
for i:=2 to 99 do if (a[i]<>a[i+1]) and (a[i]<>a[i-1]) then writeln('a[',i,']=',a[i]);
if a[100]<>a[99] then writeln('a[100]=',a[100]);
end.
4,5(60 оценок)
Ответ:
EzVikaEz
EzVikaEz
23.11.2020
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(100,-50,50); a.Println;
  var d:=new Dictionary<integer,integer>;
  foreach var x in a do
    if d.ContainsKey(x) then d[x]:=d[x]+1
    else d[x]:=1;
  Writeln('Встречаются более одного раза');
  d.Where(kv->kv.Value>1).Select(kv->kv.Key).OrderBy(x->x).Println;
  Writeln('Встречаются ровно один раз');
  d.Where(kv->kv.Value=1).Select(kv->kv.Key).OrderBy(x->x).Println;
end.

Пример
-35 40 7 -22 -4 -24 10 -46 4 23 -4 13 -44 7 -34 -13 -8 -18 -35 14 49 -36 3 -31 42 -47 -24 -34 -22 -25 36 24 39 43 -31 -26 23 -4 -41 2 -11 27 -14 -2 -47 42 -16 -38 -23 2 -27 44 -13 -36 15 -50 -14 -12 -14 -7 -50 -7 26 -22 37 22 25 -37 -13 43 15 46 -28 13 -26 -29 29 -46 -35 50 20 -36 39 26 -48 43 -14 24 -23 -31 38 -15 -41 17 2 47 -49 -43 12 -19
Встречаются более одного раза
-50 -47 -46 -41 -36 -35 -34 -31 -26 -24 -23 -22 -14 -13 -7 -4 2 7 13 15 23 24 26 39 42 43
Встречаются ровно один раз
-49 -48 -44 -43 -38 -37 -29 -28 -27 -25 -19 -18 -16 -15 -12 -11 -8 -2 3 4 10 12 14 17 20 22 25 27 29 36 37 38 40 44 46 47 49 50
4,4(94 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ