Основы программирования и алгоритмические языки
Освоение технологии структурного программирования и применения стандартных методов работы с одномерными массивами при разработке и создании программы на языке Турбо Паскаль. Разработка программы методом пошаговой детализации с помощью псевдокода.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 27.02.2008 |
Размер файла | 276,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
7
Министерство образования и науки Украины
Национальный горный университет
Институт электроэнергетики
Факультет информационных технологий
Кафедра ПЗКС
Реферат по теме:
«Освоение технологии структурного программирования
и применения стандартных методов работы
с одномерными массивами
при разработке и создании программы на языке Турбо Паскаль»
по дисциплине
“Основы программирования и алгоритмические языки”
ВЫПОЛНИЛА:
студент группы КС-06-2
Иванова Е.И.
ПРОВЕРИЛА:
ассистент кафедры ПЗКС
Попова Т.С.
Днепропетровск
2006
1.Условие задачи:
В массиве T(12) хранится среднемесячная температура для каждого из 12 месяцев в г. Днепропетровске. Определить самую большую отрицательную и самую маленькую положительную температуры.
2. Решение задачи в ее предметной области:
Создадим массив T12, где хранится среднемесячная температура для каждого из 12 месяцев в г. Днепропетровске. Создадим массивы А и В. Из массива Т12 перенесем все отрицательные элементы в массив А, а все положительные элементы в массив В. В массиве А найдем самую большую отрицательную температуру, а в массиве В - самую большую положительную температуру.
3. Проектируем структуры данных (их имена и типы).
Понятно, что все имена массивов с их типами, входящие в условие задачи, нужно описать в программе. Кроме того, нам понадобятся: переменная цикла i, количество отрицательных элементов KolOtric, , количество положительных элементов KolPolozh, самая большая отрицательная температура Max и самая маленькая положительная температура Min и - все типа Integer.
Значит в разделе описаний программы, назовем ее ALENA5, с учетом требований о необходимости обеспечения легкочитаемости программы и размещения необходимых комментариев, поместим следующие описания:
Type
VectorType= Array[1..12] of integer;
Var
A, {massiv dlya hranenija otric. chisel}
B, {massiv dlya hranenija polozh. chisel}
T12:VectorType; {massiv dlya hraneniya vektora}
i, {parametr cikla}
kolOtric, {kolichestvo otric. elementov}
kolPolozh, {kolichestvo polozhitelnih elementov}
Max, {samaya bol'shaya otric. temper.}
Min:integer; {samaya mal. polozhit. temper}
4. Проводим нисходящую разработку (проектирование) программы методом пошаговой детализации с помощью псевдокода. Воспользуемся результатами для получения первой версии алгоритма:
Ввести данные ALENA5
Выполнить вычисления ALENA5
Вывести результаты ALENA5
С учетом требований к «дружественности» интерфейса, детализация псевдокода Ввести данные ALENA5 дает следующее:
Вывести на экран приглашение для ввода массива T12
Ввести массив T12
Детализация псевдокода Выполнить вычисления ALENA5
дает следующее:
Определить отрицательные элементы T12 и переписать в массив А
Определить положительные элементы T12 и переписать в массив В
Найти наибольший отрицательный элемент массива А или доказать, что его не существует
Найти наименьший положительный элемент массива В или доказать, что его не существует
Детализация псевдокода Вывести результаты ALENA5 дает следующее:
Вывести наибольший отрицательный элемент массива T12
Вывести наименьший положительный элемент массива T12
5. Выполняем структурное программирование с использованием стандартных приемов:
BEGIN
CLRSCR; {ochicshaem ekran}
Writeln('Vvedite 12 elementov vectora T12: ');
for i:=1 to 12 do {organizovivaem cikl po kolichestvu elementov}
begin
Write ( ' T12 [ ' , i , ' ] = ') ; {Udobno videt' nomera elementov}
Readln (T12[i])
end;
Writeln; {Ustanavlivaem kursor na novuju stroku}
{perenosim otric. elementi iz T12 v A }
KolOtric:=0;
for i:=1 to 12 do
If T12[i]<0 then
begin
KolOtric := kolOtric + 1;
A[KolOtric] := T12[i];{zanosim po etomu nomeru}
end;
{perenosim polozhitelnie elementi iz T12 v B}
KolPolozh :=0;
fOR I:=1 TO 12 DO
If T12[i]>0 then
begin
KolPolozh := KolPolozh + 1;
B[KolPolozh] := T12[i];{zanosim po etomu nomeru}
end;
{opredelyaem samuju bol'shuju otric. temperaturu}
if ( KolOtric >= 1 ) then
begin
Max:= A[1]; {Chitaem, chto eto pervij element massiva}
if ( KolOtric > 1 ) then
for i:=2 to KolOtric do {poetomu nachinaem obrabotku so 2-go elementa}
If A[i] > Max then {sravnivaem s tekush. max otric. znach}
Max := A[i]; {zapominaem samoe bol'shoe otric. znach}
Writeln ('samaja bolshuju otric. temperatura Max= ', Max);
end
else
Writeln('Otricatelnyh znacheniy net');
{opredelyaem samuju malen'kuju polozhit. temperaturu}
if ( KolPolozh >= 1 ) then
begin
Min:= B[1]; {Chitaem, chto eto pervij element massiva}
if ( KolPolozh > 1 ) then
for i:=2 to KolPolozh do {poetomu nachinaem obrabotku so 2-go elementa}
If B[i] < Min then {sravnivaem s tekush. min.polozh. znach}
Min := B[i]; {zapominaem samoe maloe polozh. znach}
Writeln ('samaja malaja polozh. temperatura Min= ', Min);
end
else
Writeln('Polozhitelnyh znacheniy net');
{Vividim rezultat}
Readln
End.
6. Отладка программы.
Рис. 1. Результат работы программы
Рис. 2. Результат работы программы
7. Тестирование программы.
Тестовый пример для нашей задачи будет включать два варианта:
Пример1:
При
T12[1] = 1, T12[2]=-2, T12[3]=3, T12[4]=-4, T12[5]=5, T12[6]=-6, T12[7]=7, T12[8]=-8, T12[9]=9, T12[10]=-10, T12[11]=11, T12[12]=-12.
Как мы видим, самая большая отрицательная температура у нас T12[2]=-2, а самая малая положительная T12[1] = 1.
Рис. 3. Результат тестирования программы( пример 1)
Пример2:
При
T12[1] = -1, T12[2]=2, T12[3]=-3, T12[4]=4, T12[5]=-5, T12[6]=6, T12[7]=-7, T12[8]=8, T12[9]=-9, T12[10]=10, T12[11]=-11, T12[12]=12.
Как мы видим, самая большая отрицательная температура у нас T12[1]=-1, а самая малая положительная T12[2]=2.
Рис. 4. Результат тестирования программы( пример 2)
Подобные документы
Сущность среды программирования Turbo Pascal. Разработка программы с учетом потребительских свойств. Особенности методов современной технологии программирования (пошаговой детализации, структурный, модульный принцип, метод иерархической декомпозиции).
курсовая работа [57,1 K], добавлен 03.03.2011Язык программирования Турбо Паскаль. Запись алгоритма на языке программирования и отладка программы. Правила записи арифметических выражений. Стандартное расширение имени файла, созданного системным редактором. Составной оператор и вложенные условия.
курсовая работа [75,0 K], добавлен 21.03.2013Основные сведения о системе программирования Турбо Паскаль. Структура программы на Паскале и ее компоненты. Особенности и элементы языка Турбо Паскаль. Порядок выполнения операций в арифметическом выражении, стандартные функции и оператор присваивания.
лекция [55,7 K], добавлен 21.05.2009Сравнительный анализ языков программирования высокого уровня Си и Паскаль. Реализация алгоритма обработки данных. Тестирование и отладка программы или пакета программ. Структура программы на языке Турбо Паскаль. Указатели и векторные типы данных.
курсовая работа [233,5 K], добавлен 14.12.2012Методика и технологический прием структурного программирования; построение алгоритма программы логической задачи в виде блок-схемы из структур "следование, ветвление, цикл"; кодирование текста программы, языки структурного программирования Паскаль и Си.
реферат [623,5 K], добавлен 25.03.2012Изучение истории создания языка Турбо-Паскаль, важнейшего инструмента для обучения методам структурного программирования. Анализ меню управления всеми ресурсами интегрированной инструментальной оболочки, зарезервированных слов, символьных переменных.
презентация [989,7 K], добавлен 06.12.2011Цель, этапы, основные проблемы структурного программирования. Принцип нисходящего проектирования алгоритмов и программ (метод проектирования сверху вниз). Достоинства метода пошаговой детализации. Основные плюсы и минусы методик программирования.
реферат [40,0 K], добавлен 01.04.2010История и основы структурного программирования в среде Turbo Pascal. Работа с различными типами данных. Операторы языка. Работа с символьными и строковыми переменами, одномерным, двумерным массивами. Классификация компьютерных игр. Игры на языке Паскаль.
курсовая работа [28,8 K], добавлен 06.05.2014Особенности программирования на языке Паскаль в среде Турбо Паскаль. Линейные алгоритмы, процедуры и функции. Структура данных: массивы, строки, записи. Модульное программирование, прямая и косвенная рекурсия. Бинарный поиск, организация списков.
отчет по практике [913,8 K], добавлен 21.07.2012Программирование на языке Паскаль: алфавит, решение задач, простейшие программы, разветвляющие программы, циклические программы, ввод-вывод, массивы, подпрограммы, строковые данные, записи, файлы, использование библиотеки CRT, графика в Паскале.
учебное пособие [211,1 K], добавлен 30.03.2008