Основи програмування та алгоритмічні мови

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Міністерство освіти і науки України
Національний гірничий університет
Інститут електроенергетики
Факультет інформаційних технологій
Кафедра ПЗКС
Реферат на тему:
«Освоєння технології структурного програмування
та застосування стандартних методів роботи
з одновимірними масивами
при розробці та створенні програми на мові Турбо Паскаль »
з дисципліни
"Основи програмування та алгоритмічні мови"
ВИКОНАВ:
студент групи КС-06-2
Іванова Є.І.
ПЕРЕВІРИТИ:
асистент кафедри ПЗКС
Попова Т.С.
Дніпропетровськ
2006

1.Условіе завдання:
У масиві T (12) зберігається середньомісячна температура для кожного з 12 місяців у м. Дніпропетровську. Визначити найбільшу негативну і найменшу позитивну температури.
2. Рішення завдання в її предметної області:
Створимо масив T12, де зберігається середньомісячна температура для кожного з 12 місяців у м. Дніпропетровську. Створимо масиви А і В. З масиву Т12 перенесемо всі негативні елементи в масив А, а всі позитивні елементи в масив В. У масиві А знайдемо найбільшу негативну температуру, а в масиві В - найбільшу позитивну температуру.
3. Проектуємо структури даних (їх імена і типи).
Зрозуміло, що всі імена масивів з їх типами, що входять в умову задачі, потрібно описати в програмі. Крім того, нам знадобляться: мінлива циклу i, кількість негативних елементів K olOtric,, кількість позитивних елементів K olPolozh, найбільша негативна температура 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;
{Odivdelyaem 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');
{Odivdelyaem 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)
Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
11.3кб. | скачати


Схожі роботи:
Алгоритмічні мови програмування
Основи мови програмування Лісп
Алгоритмічні мови використання множин
Алгоритмічні мови обробка масивів
Алгоритмічні мови обробка одновимірних масивів
Алгоритмічні мови використання процедур при роботі з двовимірними масивами
Мови програмування 2
Мови програмування
Мови та технологія програмування
© Усі права захищені
написати до нас