
- •Лабораторная работа № 7 текстовые файлы
- •Постановка задачи:
- •Типовой вариант
- •Порядок выполнения работы
- •Варианты заданий Задача 1
- •Лабораторная работа № 7 текстовые файлы
- •Постановка задачи:
- •Исходные величины представить в виде внешнего текстового файла, ввести их из файла и вывести в другой текстовый файл и на экран в формате.
- •Ввести исходный массив из текстового файла. Вывести его в естественном виде. Выполнить задание. Результаты вывести в другой текстовый файл. Вариант № 1
- •2. Найти разность r между максимальным и минимальным элементами массива Содержание работы
- •(Контрольные вопросы – правильные варианты ответов)
- •1) Ввод по имени массива
- •2) Ввод с использованием циклического элемента
- •3) Ввод с использованием цикла do-enddo
- •4) Ввод с использованием цикла do с меткой на последнем операторе тела цикла
- •5) Ввод с использованием цикла do с меткой на операторе continue
- •1) Ввод по имени массива
- •2) Ввод с использованием циклических элементов
- •3) Ввод с использованием комбинации циклического элемента для внутреннего цикла и цикла do-enddo для внешнего цикла
- •4) Ввод с использованием циклов do-enddo
- •5) Ввод с использованием цикла do с меткой на последнем операторе тел циклов
- •6) Ввод с использованием циклов do с меткой на операторах continue
- •7) Ввод с использованием циклов do с меткой на одном операторе continue, который является последним для обоих циклов
- •8) Ввод с использованием одного цикла do с меткой на последнем операторе (read) и цикла с оператором continue в конце
- •1) Вывод по имени массива
- •2) Вывод с использованием циклических элементов
- •3) Вывод с использованием комбинации циклического элемента для внутреннего цикла и цикла do-enddo для внешнего цикла
- •4) Вывод с использованием циклов do-enddo
- •5) Вывод с использованием цикла do с меткой на последнем операторе тел циклов
- •6) Вывод с использованием циклов do с меткой на операторах continue
- •7) Вывод с использованием циклов do с меткой на одном операторе continue, который является последним для обоих циклов
- •8) Вывод с использованием одного цикла do с меткой на последнем операторе (write) и цикла с оператором continue в конце
- •1) Вывод по имени массива
- •2) Вывод с использованием циклического элемента
- •3) Вывод с использованием цикла do-enddo
- •4) Вывод с использованием цикла do с меткой на последнем операторе тела цикла
- •5) Вывод с использованием цикла do с меткой на операторе continue
(Контрольные вопросы – правильные варианты ответов)
Ввод элементов одномерного массива A(N) из текстового файла
!----------------------------------------------
1) Ввод по имени массива
!----------------------------------------------
integer::f=1
open(unit=f,file='Lab7.txt')
read(f,*) A
close(f)
integer f/1/;
open(unit=f,file='Lab7.txt');
read(f,*) A;
close(f);
open(unit=1,file='Lab7.txt')
read(1,*) A
close(1)
open(2,file='Lab7.txt');
read(2,*) A;
close(2);
!----------------------------------------------
2) Ввод с использованием циклического элемента
!----------------------------------------------
integer::f=1
open(unit=f,file='Lab7.txt')
read(f,*) (A(I),I=1,N)
close(f)
integer f/1/;
open(unit=f,file='Lab7.txt');
read(f,*) (A(I),I=1,N);
close(f);
open(unit=1,file='Lab7.txt')
read(1,*) (A(I),I=1,N)
close(1)
open(2,file='Lab7.txt');
read(2,*) (A(I),I=1,N);
close(2);
!----------------------------------------------
3) Ввод с использованием цикла do-enddo
!----------------------------------------------
INTEGER::f=1
OPEN(unit=f,file='Lab7.txt')
DO I=1,N,1
READ(f,*) A(I)
ENDDO
CLOSE(f)
INTEGER f/1/;
OPEN(unit=f,file='Lab7.txt');
DO I=1,N,1;
READ(f,*) A(I);
ENDDO;
CLOSE(f);
OPEN(unit=1,file='Lab7.txt')
DO I=1,N,1
READ(1,*) A(I)
ENDDO
CLOSE(1)
OPEN(3,file='Lab7.txt');
DO I=1,N,1;
READ(3,*) A(I);
ENDDO;
CLOSE(3);
!----------------------------------------------
4) Ввод с использованием цикла do с меткой на последнем операторе тела цикла
!----------------------------------------------
integer::f=1;
open(unit=f,file='Lab7.txt');
do 6 i=1,N
6 read(f,*) A(i);
close(f)
integer f/1/
open(unit=f,file='Lab7.txt')
do 6 i=1,N
6 read(f,*) A(i)
close(f)
open(unit=1,file='Lab7.txt');
do 6 i=1,N;
6 read(1,*) A(i);
close(1);
open(2,file='Lab7.txt')
do 6 i=1,N
6 read(2,*) A(i)
close(2)
!----------------------------------------------
5) Ввод с использованием цикла do с меткой на операторе continue
!----------------------------------------------
INTEGER::f=1
OPEN(unit=f,file='Lab7.txt')
DO 4 I=1,N
READ(f,*) A(I)
4 CONTINUE
CLOSE(f)
INTEGER f/1/;
OPEN(unit=f,file='Lab7.txt');
DO 4 I=1,N
READ(f,*) A(I);
4 CONTINUE;
CLOSE(f);
OPEN(unit=1,file='Lab7.txt')
DO 4 I=1,N
READ(1,*) A(I)
4 CONTINUE
CLOSE(1)
OPEN(4,file='Lab7.txt');
DO 4 I=1,N;
READ(4,*) A(I);
4 CONTINUE;
CLOSE(4);
Чтение двумерного массива b(n,m) из текстового файла
!----------------------------------------------
1) Ввод по имени массива
!----------------------------------------------
integer::f=1
open(unit=f,file='lab7.txt')
read(f,*) b
close(f)
integer f/1/
open(unit=f,file='lab7.txt')
read(f,*) b
close(f)
open(unit=7,file='lab7.txt')
read(7,*) b
close(7)
open(5,file='lab7.txt')
read(5,*) b
close(5)
!----------------------------------------------
2) Ввод с использованием циклических элементов
!----------------------------------------------
integer::f=1
open(unit=f,file='lab7.txt')
read(f,*) ((b(i,j),j=1,m,1),i=1,n,1)
close(f)
integer f/1/
open(unit=f,file='lab7.txt')
read(f,*) ((b(i,j),j=1,m),i=1,n)
close(f)
open(unit=7,file='lab7.txt')
read(7,*) ((b(i,j),j=1,m,1),i=1,n,1)
close(7)
open(4,file='lab7.txt')
read(4,*) ((b(i,j),j=1,m),i=1,n)
close(4)
!----------------------------------------------