Типизированные файлы. "Роза Ветров" - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Файл(типизированный), содержит информацию о направлении ветра в некотором населенном пункте в течении некоторого продолжительного времени. Опеределить в каком направлении от города нужно сроить металургичесский комбинат, если направлений несколько вывести их. з.ы.:8 направллений(север,юг,запад,восток, и между ними). Прошу помочь с алгоритмом, если получится можно и с реализацией

Решение задачи: «Типизированные файлы. "Роза Ветров"»

textual
Листинг программы
type st=string[2];
const a:array[0..7] of st=('С','СВ','В','ЮВ','Ю','ЮЗ','З','СЗ');
var f:file of st;
    n,i,j,k,imin:integer;
    x:st;
    b:array[0..7] of integer;
begin
randomize;
assign(f,'roza_vetrov');
rewrite(f);
write('Количество наблюдений n=');
readln(n);
for i:=1 to n do
 begin
  x:=a[random(8)];
  write(f,x);
 end;
reset(f);
writeln('Направление ветра по моментам наблюдений');
for i:=0 to 7 do
b[i]:=0;
while not eof(f) do
 begin
  read(f,x);
  write(x:4);
  k:=-1;
  j:=0;
  while(j<=7)and(k=-1)do
  if x=a[j] then k:=j
  else inc(j);
  inc(b[k]);
 end;
close(f);
writeln;
writeln('Роза ветров');
imin:=0;
for i:=0 to 7 do
 begin
  writeln(a[i]:3,b[i]:4);
  if b[i]<b[imin] then imin:=i;
 end;
write('Завод следует строить на ',a[imin]);
end.

Объяснение кода листинга программы

  1. Создается тип данных st, который представляет собой массив из двух символов.
  2. Создается константа a, которая представляет собой массив из восьми строк.
  3. Создается переменная f, которая представляет собой файл.
  4. Создаются переменные n, i, j, k, которые представляют собой целые числа.
  5. Создается переменная x, которая представляет собой строку.
  6. Создается массив b, который представляет собой массив из восьми целых чисел.
  7. Задается начальное значение для randomize.
  8. Задается начальное значение для rewrite.
  9. Выводится сообщение о количестве наблюдений.
  10. Для каждого наблюдения:
    • Выводится сообщение о направлении ветра.
    • Чтение из файла для получения направления ветра.
    • Выводится сообщение о текущем направлении ветра.
    • Обновление значений в массиве b.
  11. Выводится сообщение о минимальном направлении ветра.
  12. Выводится сообщение о том, где следует строить завод.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.923 из 5
Похожие ответы