{Напишите программу, которая находит минимальное и максимальное
среди чётных положительных чисел, записанных в файле,
и выводит результат в другой файл.}
var f:text;
min, max,a :integer;
find:boolean;{есть/нет числа удовлетворяющие условию}
begin
assign(f,'dan.txt'); reset(f);
min:=0; max:=0;
find:=false;
while not eof(f) do
begin
read(f,a);
if not find and (a>0) and (a mod 2=0) then
begin
min:=a; find:=true;
end
else
if find and (a>0) and (a mod 2=0) and (min>a) then
min:=a;
if (a>0) and (a mod 2=0) and (max<a) then
max:=a;
end;
close(f);
assign(f,'res.txt');
rewrite(f);
if max=0 then writeln(f,'чётных положительных чисел нет')
else
writeln(f,'min среди чётных положительных чисел =',min, chr(13),
'max среди чётных положительных чисел нет',max);
close(f);
end.
Подробнее - на -
Объяснение:
Скрины работы прикреплены, путь к файлу поменяйте на нужный сами
static void Main(string[] args)
{
string file = "C:\\Desktop\\text.txt";
StreamReader rd = new StreamReader(new FileStream(file, FileMode.Open), System.Text.Encoding.Default);
string[] stolb = new string[0];
string textStr = "";
textStr = rd.ReadToEnd().Replace("\n", "").Replace("\r", " ");//Считываем строку из файла, удаляя из нее символы переноса строки.
Console.WriteLine("Текст из файла строкой: " + textStr);
Console.WriteLine();
Console.WriteLine("Текст из файла Столбиком:");
String[] words = textStr.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);//заполняем массив словами из текста(т.е. разделяем по пробелу)
//выводим каждый элемент построчно
for (int i = 0; i < words.Length; i++)
{
Console.WriteLine(words[i]);
}
Console.ReadLine();
}
на что тебе ответить та