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

Напишите программу которая находит минимальное и максимальное среди чётных положительных чисел, записенных в файле, и выводит результат в другой файл. учтите что таких чисел может вообще не быть

👇
Ответ:
натали524
натали524
28.03.2020
Const
  lim=2000000;
var
  d,max,min:longint;
  f:Text;
begin
  Assign(f,'input.txt'); Reset(f);
  max:=-lim; min:=lim;
  while not Eof(f) do begin
    Readln(f,d);
    if (d>0) and (d mod 2=0) then
      if max<d then max:=d
      else if min>d then min:=d;
  end;
  Close(f);
  Assign(f,'output.txt'); Rewrite(f);
  if min<>lim then Writeln(f,min,' ',max);
  Close(f);
end.
4,4(33 оценок)
Открыть все ответы
Ответ:
kulisenok
kulisenok
28.03.2020

// PascalABC.NET 3.6.3

uses School;

function Divizors(n: integer): List<integer>;

begin

 var L := new List<integer>;

 L.Add(1);

 L.Add(n);

 if n > 3 then

   begin

   var k := 2;

   while (k * k <= n) and (k < 46341) do

   begin

     if n mod k = 0 then

     begin

       var t := n div k;

       L.Add(k);

       if k < t then L.Add(t)

       else break

     end;  

     Inc(k)

   end;

   L.Sort;

 end;

 Result := L

end;

begin

 // 1

 if ReadInteger.IsPrime then Println('YES')

 else Println('NO');

 // 2

 ReadInteger.Factorize.First.Println;

 // 3

 var a := Divizors(ReadInteger);

 Print(a.Count, a.Sum)

end.

4,5(40 оценок)
Ответ:
аникдим
аникдим
28.03.2020

// PascalABC.NET 3.6.3

uses School;

function Divizors(n: integer): List<integer>;

begin

 var L := new List<integer>;

 L.Add(1);

 L.Add(n);

 if n > 3 then

   begin

   var k := 2;

   while (k * k <= n) and (k < 46341) do

   begin

     if n mod k = 0 then

     begin

       var t := n div k;

       L.Add(k);

       if k < t then L.Add(t)

       else break

     end;  

     Inc(k)

   end;

   L.Sort;

 end;

 Result := L

end;

begin

 // 1

 if ReadInteger.IsPrime then Println('YES')

 else Println('NO');

 // 2

 ReadInteger.Factorize.First.Println;

 // 3

 var a := Divizors(ReadInteger);

 Print(a.Count, a.Sum)

end.

4,4(91 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ