Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Пример 1. Найти сумму четных чисел в диапазоне от 1 до 20, вывести эти числа и полученную сумму в текстовый файл.



Решение: S – переменная для хранения суммы четных чисел. Присваиваем переменной s начальное значение равное 0. Записываем в строковую переменную путь к файлу, затем связываем файл и файловую переменную. Открываем файл в режиме перезаписи. С помощью цикла с заданным числом повторений проверяем числа на четность. Если число четное, то увеличиваем переменную s на единицу и выводим найденное четное число в файл. Выводим значение суммы четных чисел в файл и закрываем его.

Блок-схема алгоритма (рис. 1).

Запишем программу на языке Паскаль:

var

s, i: integer;

f: text;

fname: string[20];

begin

s: =0;

fname: ='d: \out. txt';

assign(f, fname);

rewrite(f);

for i: = 2 to 20 do

begin

    if i mod 2 = 0 then

    begin

     s: =s+i; writeln(f, i);

    end;

end;

writeln(f, 'Сумма четных чисел от 1 до 20 равна ', s);

close(f);

end.

 

Рисунок 1 – блок-схема 1

 

Пример 2: дан текстовый файл. Вывести количество содержащихся в нем символов и строк (маркеры концов строк EOLN и конца файла EOF при подсчете количества символов не учитывать).

Решение: N – переменная для хранения количества строк, k – переменная, для хранения количество символов. Присвоим переменным n и k начальное значение равное 0. Связываем файловую переменную и файл, открываем файл для чтения. С помощью цикла с предусловием для файла, считываем и запоминаем количество строк. Задаем цикл с предусловием для строки, считываем и запоминаем количество символов. Закрываем файл и выводим на экран найденные значение количества строк и количества символов.

Блок-схема алгоритма (рис. 2).

Запишем программу на языке Паскаль:

varF: Text;

N, K: integer;

Name: String; C: Char;

begin

 Assign(F, 'd: \out. txt');

 Reset(F);

 N: =0; K: =0;

 While not eof(F) do

begin

inc(N);

While not eoln(f) do

begin

inc(K);

Read(F, C);

end;

Readln(F);

end;

 Close(F);

 Writeln(N, ' ', K);

end.

 

Рисунок 2 – блок-схема 2

В одной программе можно одновременно и считывать данные из файла и записывать данные в файл.

Пример 3: считать из файла input. txt числа (числа записаны в столбик). Затем записать их произведение в файл output. txt.

Решение: P – переменная, хранящая произведение чисел. Присваиваем переменной p начальное значение равное 1. Связываем файловую переменную и файл, затем открываем файл для чтения. Задаем цикл с предусловием для файла, считываем число и добавляем в переменную p. Следующие считываемые числа умножаем на переменную p.

 Закрываем файл и открываем в режиме перезаписи. Записываем найденное произведение в файл и закрываем его.

Блок-схема алгоритма (рис. 3).

Запишем программу на языке Паскаль:

var p, x: integer;

f: text;

begin

assign(f, 'input. txt');

reset(f);

p: = 1;

while not eof(f) do begin

readln(f, x);

 p: = p * x;

end;

close(f);   

assign(f, 'output. txt');

rewrite(f);

writeln(f, 'Произведение чисел ', p);   

close(f);

end.

 

 

Рисунок 3 – блок-схема 3

 


Поделиться:



Последнее изменение этой страницы: 2023-11-01; Просмотров: 522; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.008 с.)
Главная | Случайная страница | Обратная связь