Помогите написать программу ** паскале абс Файловый тип данных. задача: Дан...

0 голосов
54 просмотров

Помогите написать программу на паскале абс
Файловый тип данных.
задача: Дан целочисленный файл А. Записать в файл В все положительные числа.


Информатика (35 баллов)
оставил комментарий (35 баллов)

в задании написано "Целочисленный файл"

оставил комментарий (35 баллов)

не каких вопросов не будет

оставил комментарий (35 баллов)

ты напиши пожалуйста

оставил комментарий (35 баллов)

вот тебе пример 

оставил комментарий Архангел (142k баллов)

Вопрос не в умении, а в желании. Тут писать-то практически нечего, а расспросов потом будет про "мы так не учили", "а как это работает", "а это не та версия Паскаля" и т.п.

оставил комментарий (35 баллов)

если можешь напиши пожалуйста

оставил комментарий (35 баллов)

ну можешь сделать?

оставил комментарий Архангел (142k баллов)

Другое дело, что файл типа Text может содержать строки, изображающие целые числа, но все равно это текстовый файл, а не целочисленный.

оставил комментарий Архангел (142k баллов)

Ваш пример противоречит условию. В условии сказано, что файл целочисленный. Целочисленным файлом в Паскале может быть типизированный файл с описанием f1: file of integer; но никак не файлы Text, описанные в Вашем примере.

оставил комментарий (35 баллов)

Дан целочисленный файл А. Записать в файл В сумму положительных чисел файла А, а в файл С количество нулевых чисел файла АvarF1, F2, F3: Text; {файловые переменные } S, N, B: integer;beginAssign(F1, 'D:\pascal\haha.txt');Reset(F1); {открытие файла F1 для чтения }Assign(F2, 'D:\pascal\haha1.txt');Rewrite(F2); {открытие файла F2 для записи}S := 0;B := 0;while not EOF(F1) Do {проверка на конец файла F1}begin Read(F1, N); {чтение элемента из файла Fl}if N > 0 then  S := S + N; {вычисле

Дан 1 ответ
0 голосов
Архангел (142k баллов)
 
Правильный ответ

// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
begin
  var f,fp: file of integer;
  var i:integer;
  Assign(f,'in.int'); Reset(f);
  Assign(fp,'out.int'); Rewrite(fp);
  while not eof(f) do begin
    Read(f,i);
    if i>0 then Write(fp,i)
  end;
  Close(f); Close(fp)
end.

Прикрепленный файл in.txt - тестовый in.int, у которого переименовано расширение, поскольку файл с расширением int присоединить сюда не получается.


Скачать вложение Текст (TXT)
оставил комментарий Архангел (142k баллов)

Здесь 20 - количество чисел, -50,50 - диапазон

оставил комментарий Архангел (142k баллов)

// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
begin
var a:=ArrRandom(20,-50,50); a.Println;
var f:file of integer;
Assign(f,'in.int'); Rewrite(f);
foreach var i in a do Write(f,i);
Close(f);}
end.

оставил комментарий Архангел (142k баллов)

Входной файл бы создан дополнительной программой

оставил комментарий Архангел (142k баллов)

Пожалуйста

оставил комментарий (35 баллов)

спасибо большое)

оставил комментарий Архангел (142k баллов)

А вот так можно распечатать выходной файл

оставил комментарий Архангел (142k баллов)

// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
begin
var f: file of integer;
var i:integer;
Assign(f,'out.int'); Reset(f);
while not eof(f) do begin
Read(f,i); Write(i,' ')
end;
Close(f)
end.

...