ОДНОВИМІРНІ МАСИВИ

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2010
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Основи програмування та алгоритмічні мови

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний технічний університет України “Київський політехнічний інститут” Кафедра ОТ ЗВІТ про виконання лабораторної роботи № 5.1 з дисципліни “Основи програмування та алгоритмічні мови” Тема: ОДНОВИМІРНІ МАСИВИ Варіант 28 Постановка задачі Заданий одновимірний масив А(n) цілих чисел. Визначити, скільки елементів масиву А задовільняють умові | ai | < i2; замінити кожен із таких елементів залишком від ділення його квадрату на n. Якщо таких елементів немає, вивести відповідне повідомлення. Надрукувати вхідний масив, визначену кількість елементів та вихідний масив (при їх наявності). Аналітичні викладки Поелементно перевіряємо відповідність чисел умові і у задовільному випадку замінюємо елемент залишком від ділення його квадрату на n. Блок-схема алгоритму розв’язання задачі  Текст програми program lab_5_1; uses crt; const n = 10; type mas=array[1..n] of integer; bolmas=array[1..n] of boolean; var a,b:mas; {масиви даних} s, {кількість замін} i: integer; z,v:char; mask1,mask2:bolmas; {Обчислення кількості замін} Function kilkist(const a:mas):integer; begin s := 0; for i:=1 to n do if (abs(a[i])) < (i*i) then s := s + 1; kilkist := s; end; {Виконання замін (основна задача)} Procedure zamina(const a:mas; var b:mas; var mask:bolmas); begin for i:=1 to n do if (abs(a[i])) < (i*i) then begin b[i] := (a[i]*a[i]) mod n; mask[i] := True; end else begin mask[i] := False; b[i] := a[i]; end; end; {генерація} Procedure input (var a:mas; var mask:bolmas); begin write ('Vvesti massiv? (y/n) '); readln (v); if (v='y') or (v='Y') then for i := 1 to n do begin mask[i] := False; readln(a[i]) end else for i:=1 to n do begin mask[i] := False; a[i] := random(10*n); end end; {виведення} Procedure output(const v:mas; const mask:bolmas); begin for i:=1 to n do if mask[i] = True then begin textcolor(13); write(v[i]:5); textcolor(0); end else write (v[i]:5); writeln; end; begin TextBackGround(7); clrscr; REPEAT randomize; input(a,mask1); output(a,mask1); zamina(a,b,mask2); output(b,mask2); s := kilkist(a); writeln ('Kilkist elementiv ', s); write('Repeat?(y/n) '); readln(z); UNTIL (z <> 'y') and (z <> 'Y'); end. Результати виконання програми / Висновок Під час виконання лабораторної роботи я набув навичок роботи з одномірними масивами. Правильність обчислень легко перевірити за допомогою калькулятора (елементи, які були замінені, підсвічені).
Антиботан аватар за замовчуванням

01.03.2013 19:03-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!