Текст модуля программиста к задаче 14.
Unit MyMod;
interface
Type Mas=Array[1..15] of integer; { тип массив }
Procedure Vvod (Var X:Mas);
Procedure Vivod (Var X:Mas);
Function Col1 (Var X:Mas) : byte;
Function Col2 (Var X:Mas) : byte;
Procedure Uvel (Var X: Mas; n:integer);
Procedure Umen (Var X: Mas; n:integer);
implementation
Procedure Vvod; {процедура ввода массива}
Var i: byte;
Begin
For i:=1 to 15 do
X[i]:=Random(100)-25;
End;
Procedure Vivod ; {процедура вывода массива}
Var i: byte;
Begin
For i:=1 to 15 do
Write (X[i]:5);
Writeln;
End;
Function Col1 (Var X:Mas) : byte;
{функция подсчета кол-ва четных значений в массиве}
Var i, z: byte;
Begin
z:=0;
For i:=1 to 15 do begin
if X[i] mod 2 =0 then z:=z+1;
End;
Col1:=z;
End;
Function Col2 (Var X:Mas) : byte;
{функция подсчета кол-ва нечетных значений в массиве}
Var i, z: byte;
Begin
z:=0;
For i:=1 to 15 do begin
if X[i] mod 2 <>0 then z:=z+1;
End;
Col2:=z;
End;
Procedure Uvel;
{процедура увеличения четных эл-тов на значение n}
Var i: byte;
Begin
For i:=1 to 15 do
if X[i] mod 2 =0 then X[i]:=X[i]+n;
End;
Procedure Umen;
{процедура уменьшения нечетных эл-тов на значение n}
Var i: byte;
Begin
For i:=1 to 15 do
if X[i] mod 2 <>0 then X[i]:=X[i]-n;
End;
End.
Текст основной программы к задаче 14.
Program Ex_14;
Uses MyMod, Crt;
Var k1, k2: byte;
A, B: Mas;
Begin
ClrScr;
Randomize;
Vvod (A); { ввод массива А }
Vivod(A); { вывод массива А }
Vvod (B); { ввод массива В }
Vivod(B); { вывод массива В }
k1:=Col1(A); { вычисление кол-ва четных в массиве А}
k2:=Col2(A); { вычисление кол-ва нечетных в массиве А }
if k1>k2 then begin { если четных больше }
Uvel(A, 10); Umen(A, 10); Vivod(A);
End;
k1:=Col1(B); { вычисление кол-ва четных в массиве В}
k2:=Col2(B); { вычисление кол-ва нечетных в массиве В }
if k1>k2 then begin { если четных больше }
Uvel(B, 10); Umen(B, 10); Vivod(B);
End;
Readln;
End.
Схема основной программы
к задаче 14.
- 230401 «Информационные системы»
- 230115 «Программирование в компьютерных системах»
- Лабораторная работа №1. Организация ввода-вывода информации
- Алфавит языка Turbo Pascal.
- Переменные и константы.
- Основные типы переменных.
- Структура программы.
- Оператор присваивания, операторы ввода с клавиатуры и вывода на экран.
- Процедуры управления выводом на экран.
- Компиляция и выполнение программы.
- Лабораторная работа №2. Арифметические выражения. Программирование алгоритмов линейной структуры.
- Арифметические выражения в языке Turbo Pascal.
- Стандартные арифметические функции.
- Генератор случайных чисел.
- Составление алгоритма и программы для решения задачи.
- Лабораторная работа № 3. Программирование алгоритмов разветвленной структуры. Оператор ветвления if … then … else
- Условный оператор if … then … else.
- Составной оператор.
- Лабораторная работа № 4. Программирование алгоритмов разветвленной структуры. Оператор ветвления case.
- Условный оператор Case.
- Лабораторная работа № 5. Программирование алгоритмов циклической структуры с известным числом повторений.
- Оператор циклаWhile.
- Оператор цикла repeat.
- Вложенные циклы
- Оператор перехода
- Лабораторная работа № 6. Обработка строк с использованием операторов цикла.
- Лабораторная работа № 7. Программирование алгоритмов циклической структуры с неизвестным числом повторений.
- Лабораторная работа № 8. Обработка одномерных числовых массивов.
- Лабораторная работа № 9. Обработка двумерных числовых массивов.
- Лабораторная работа № 10. Использование процедур и функций при обработке массивов.
- Лабораторная работа № 11. Тип запись. Массивы записей.
- Лабораторная работа № 12. Обработка информации из файлов последовательного доступа.
- Лабораторная работа № 13. Обработка информации из файлов прямого доступа.
- Лабораторная работа № 14. Модуль программиста. Многомодульный проект.
- Текст модуля программиста к задаче 14.