Основы алгоритмизации и программирования

Составление нециклических программ и нециклических программ с разветвлениями. Составление циклических программ, а также составление программ обработки одномерных массивов и матриц. Процедуры, обработка строк и программирование динамических структур.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 27.01.2014
Размер файла 80,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Министерство образования Республики Беларусь

УО «Витебский государственный политехнический колледж»

Домашняя контрольная работа №1

по дисциплине «Основы алгоритмизации и программирования»

Выполнил

Учащаяся гр.11 ПЗз-11

Корпусенко К.О.

Проверил

Тыбербай С.Г.

г. Витебск 2013 г.

Содержание

1. Составление нециклических программ.

2. Составление нециклических программ с разветвлениями.

3. Составление циклических программ.

4. Составление программ обработки одномерных массивов.

5. Составление программ обработки матриц.

6. Процедуры.

7. Обработка строк.

8. Программирование динамических структур.

1. Составление нециклических программ

При составлении программ необходимо предусмотреть ввод и вывод данных в наглядной форме. В необходимых случаях разрешается самостоятельно доопределять условие задачи (выбор типа переменных, содержание текстовых сообщений и тому подобное).

Условие: Найти длину окружности L и площадь круга S заданного радиуса R:

L = 2·р·R, S = р·R2. В качестве значения р использовать 3.14.

Решение.

Оформляем решение из программы Паскаль

program Z1;

var L,S,R:real; (объявляем переменные L, S, R вещественного типа)

begin

writeln('Введите радиус');

readln(R);

L:=2*3.14*R;

S:=3.14*sqr(R);

writeln('длина окружности', L);

writeln('площадь круга', S);

end.

Блок-схема

Тест:

№ теста

Вход

Ожидаемый выход

Фактический выход

Результат

1

5

длина окружности31.4

площадь круга78.5

длина окружности31.4

площадь круга78.5

Да

2. Составление нециклических программ с разветвлениями

При составлении программ необходимо предусмотреть ввод и вывод данных в наглядной форме. В необходимых случаях разрешается самостоятельно доопределять условие задачи (выбор типа переменных, содержание текстовых сообщений и тому подобное).

Условие: Даны два числа. Вывести большее из них.

Решение.

Оформляем решение из программы Паскаль

program Z2;

uses crt;

var a,b:real; (объявляем переменные a,b вещественного типа)

begin

clrscr;

writeln('введите число a,b');

readln(a,b);

if a>b then writeln('большее',a) else writeln('большее',b);

end.

Блок-схема

Да

Тест:

№ теста

Вход

Ожидаемый выход

Фактический выход

Результат

1

a=5

b=8

большее 8

большее 8

Да

3. Составление циклических программ

программирование нециклическая динамическая структура

Все задачи необходимо решить с применением циклов. Переменные с индексами используются только при формулировке условий задач и их использование при составлении программ не предполагается (т.е. без использования массивов).

Условие: Даны два целых числа A и B (A < B). Найти сумму всех целых чисел от A до B включительно.

Решение.

Оформляем решение из программы Паскаль

program Z3;

uses crt;

var i,S,A,B:integer; (объявляем переменные i, S, A,B целого типа)

begin

clrscr;

writeln('введите числа A и B соответственно');

Readln(A,B);

S:=0;

for i:=A to B do

S:=S+i;

Writeln('сумма',S);

end.

Блок-схема

Тест:

№ теста

Вход

Ожидаемый выход

Фактический выход

Результат

1

A=3 B=5

сумма 12

сумма 12

Да

4. Составление программ обработки одномерных массивов

Если в задаче не задана конкретная длина массива, то в программе следует описать массив длиной 7-10 элементов. Фактическая же длина массива в этом случае определяется значением переменной, например n. При этом предполагается, что используются только первые n элементов описанного массива - оставшиеся элементы остаются незадействованными.

Условие: Дан массив, состоящий N (> 1) вещественных чисел. Найти минимальное значение массива.

Решение.

Оформляем решение из программы Паскаль

program Z4;

uses crt;

const n=10;

var a:array[1..n]of integer;

i,min:integer; (объявляем переменную min, I целые)

begin

clrscr;

writeln('заполнение массива');

for i:=1 to n do

readln(a[i]);

min:=a[1];

for i:=1 to n do

if a[i]<min then begin min:=a[i];

end;

writeln(min);

end.

Тест:

№ теста

Вход

Ожидаемый выход

Фактический выход

Результат

1

1, 2, 3, 4, 5, 6, 7, 8, 9, 10.

1

1

Да

5. Составление программ обработки матриц

Задачи, предлагаемые в данном разделе, предполагают организацию ввода прямоугольной или квадратной матрицы, её обработку и вывод исходной матрицы и полученных данных в наглядной форме. Количество строк и столбцов в матрице должно задаваться с помощью именованных констант m и n (для задания квадратной матрицы достаточно одного параметра m).

Условие: Даны целые положительные числа M и N. Сформировать целочисленную матрицу размера M Ч N, у которой все элементы I-й строки имеют значение 10·I (I = 1, …, M).

Решение.

Оформляем решение из программы Паскаль

program z5;

uses crt;

const

M=4;

N=4;

var a:array[1..M,1..N] of real;

i,j:byte;

nst:byte;

begin

clrscr;

writeln('введите масив');

for i:=1 to M do

for j:=1 to N do

readln(a[i,j]);

writeln('введите номер строки которую нужно преобразовать');

readln(nst);

for j:=1 to n do

a[nst,j]:=10*nst;

for i:=1 to M do

begin

writeln;

for j:=1 to N do

write(a[i,j]:5:1);

end;

end.

Тест:

№ теста

Вход

Ожидаемый выход

Фактический выход

Результат

1

1, 2, 3, 4, 5, 6, 7, 8, 9, 10,12,13,14,15,16

Номер строки 2

1.0 2.0 3.0 4.0

20.0 20.0 20.0 20.0

9.0 10.0 11.0 12.0

13.0 14.0 15.0 16.0

1.0 2.0 3.0 4.0

20.0 20.0 20.0 20.0

9.0 10.0 11.0 12.0

13.0 14.0 15.0 16.0

Да

6. Процедуры

Решение задачи оформить в виде процедуры (функции). Эта процедура не должна иметь глобальной переменной и выполнять какие-либо операции ввода-вывода. Весь необходимый ввод-вывод должен быть сосредоточен в разделе операторов программы. Там же должен находиться и вызов процедуры решения задачи.

Условие: Описать процедуру SortInc3(A, B, C), меняющую содержимое переменных A, B, C таким образом, чтобы их значения оказались упорядоченными по возрастанию (A, B, C -- вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры упорядочить по возрастанию два данных набора из трех чисел: (A1, B1, C1) и (A2, B2, C2).

Решение.

Оформляем решение из программы Паскаль

program z6;

uses crt;

procedure Sortinc3(var A,B,C:real);

var mx,sr,mn:real;

begin

if A>B then mx:=A else mx:=B;

if C>mx then mx:=C;

if A<B then mn:=A else mn:=B;

if C<mn then mn:=C;

B:=A+B+C-mn-mx;

A:=mn;

C:=mx;

writeln('числа в порядке возрастания: ');

writeln(a:0:2,' ',b:0:2,' ',c:0:2);

end;

var i:byte;

A,B,C:real;

begin

for i:=1 to 2 do

begin

writeln(`введите набор из 3х чисел: ');

readln(A,B,C);

Sortinc3(A,B,C);

end;

end.

7. Обработка строк

Решение задачи необходимо оформить в виде процедуры с параметрами. Использование в процедуре глобальных переменных и операций ввода-вывода не допускается.

Условие: Дан символ C, изображающий цифру или русскую прописную букву. Если C изображает цифру, то вывести строку «цифра», если букву -- вывести строку «буква». (Код символа 0 - 48, код цифры 9 - 57, код русской первой прописной буквы А - 128(192), код последней прописной буквы Я - 159(223))

Решение.

Оформляем решение из программы Паскаль

program z7;

uses crt;

var x:integer;c:char;

begin

clrscr;

writeln('введите символ');

readln(c);

x:=ord(c);

if (x>=192) and (x<=223) then writeln ('буква')else writeln('цифра');

end.

8. Программирование динамических структур

Условие: При помощи, каких процедур и функций происходит выделение и высвобождение динамической памяти. Перечислите процедуры и функции для работы с памятью.

Ответ: Эти процедуры и функции используются для управления динамически распределяемой областью - областью памяти, которая занимает всю свободную память или ее часть, остающуюся при выполнении программы. Полное описание методов, используемых для управления динамически распределяемой областью памяти приводится в разделе "Программа динамического распределения памяти" в Главе 21 ("Вопросы управления памятью").

Процедуры динамического распределения памяти

Процедура/функция

Описание

Dispose

Уничтожает динамическую переменную.

FrееМем

Уничтожает динамическую переменную данного размера.

GetМем

Создает новую динамическую переменную заданного размера и устанавливает на нее переменную-указатель.

МахАvail

Возвращает размер наибольшего непрерывного свободного модуля в динамически распределяемой области памяти, соответствующий размеру наибольшей динамической переменной, которая может быть выделена при обращении в МахAvail.

МемАvail

Возвращает количество имеющихся в динамически распределяемой области свободных байт.

New

Создает новую динамическую переменную и устанавливает на нее переменную-указатель.

Размещено на Allbest.ru


Подобные документы

  • Разработка простейших линейных алгоритмов (составление логических выражений), программ с ветвлениями, циклических программ и составление их блок-схем. Практическое выполнение обработки массивов на примере вычисления элементов квадратной матрицы.

    контрольная работа [173,3 K], добавлен 01.03.2010

  • Характеристика предприятия ТОО "Com Sales Group". Составление программ на языке программирования. Составление алгоритмов, разработка численных методов решения задач. Методы откладки программ. Анализ технологии машинной обработки экономической информации.

    отчет по практике [1,3 M], добавлен 19.04.2016

  • Использование математических функций для алгоритмизации задач и отладки программ. Операторы сравнения и логические функции; реализация циклического процесса. Организация и обработка данных при помощи массивов. Функции преобразования и работы со строками.

    методичка [135,5 K], добавлен 24.10.2012

  • Степень переносимости исходного кода между различными платформами. Первый язык программирования высокого уровня, имеющий транслятор. Программа Fortran, ее версии, отличия от других программ. Составление программ на языке программирования Fortran.

    курсовая работа [45,5 K], добавлен 04.06.2014

  • Биография Ады Августы Байрон. Перевод очерка итальянского военного инженера Луи Менабреа. Составление трех первых в мире вычислительных программ. Ada - универсальный язык программирования, включающий в себя средства для создания параллельных программ.

    реферат [43,3 K], добавлен 04.05.2009

  • Разработка линейной программы на языке С++. Разработка программ с разветвленной структурой. Составление по заданному варианту схемы алгоритма и программы вычисления тригонометрической функции с абсолютной погрешностью с использованием разложения в ряд.

    лабораторная работа [1,2 M], добавлен 12.01.2011

  • Составление программы разветвляющейся структуры для вычисления заданной функции. Нахождение произведения чётных и нечётных первых чисел натурального ряда. Приёмы программирования обработки одномерных массивов. Расчет суммы положительных элементов массива.

    контрольная работа [1,3 M], добавлен 20.12.2012

  • Решение задач прикладного программирования. Оформление разработанных алгоритмов в виде графических схем. Написание программ с использованием подпрограмм, их отладка. Блок-схемы и листинг программ. Наборы тестов для отладки разработанных программ.

    курсовая работа [575,8 K], добавлен 06.12.2013

  • Понятие массива и правила описания массивов в программах на языке С. Рассмотрение основных алгоритмов обработки одномерных массивов. Примеры программ на языке С для всех рассмотренных алгоритмов. Примеры решения задач по обработке одномерных массивов.

    учебное пособие [1,1 M], добавлен 22.02.2011

  • Различные способы обработки информации и программирование в среде Pascal. История создания языка. Блок схема с использованием заголовка функций задания. Описание подпрограмм. Сущность структурного программирования в аспекте написания алгоритмов программ.

    курсовая работа [331,9 K], добавлен 18.01.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.