Програми з використанням масивів та індексаторів

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

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

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

Рік:
2013
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Алгоритмічні мови та програмування
Варіант:
16

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» З В І Т до лабораторної роботи № 3 з курсу: «Алгоритмічні мови та програмування» на тему: «Програми з використанням масивів та індексаторів.» Варіант № 16 ЗАВДАННЯ Скласти блок-схеми алгоритмів та програму мовою С# для роботи з одномірним масивом цілих чисел (вектором). Забезпечити наступні можливості: завдання довільних цілих границь індексів при створенні об'єкта; звертання до окремого елемента масиву з контролем виходу за межі масиву; розрахунок за алгоритмом, згідно з завданням, отриманим від викладача за табл. 2; вивід на екран елемента масиву по заданому індексі й усього масиву. Програма повинна демонструвати всі розроблені елементи класу. 16 В одномірному масиві, що складається з п дійсних елементів, обчислити: кількість від’ємних елементів масиву; суму модулів елементів масиву, розташованих після мінімального по модулю елемента. Замінити всі від’ємні елементи масиву їхніми квадратами й упорядкувати елементи масиву за зростанням.   БЛОК-СХЕМА АЛГОРИТМУ Блок-схема методу Main ()  Блок-схема методу Vvid ()  Блок-схема методу meji ()  Блок-схема методу Vuvid ()  Блок-схема методу kikist ()  Блок-схема методу summamod ()  Блок-схема індексатора this [x] Метод-аксесор set  Метод-аксесор get  Блок-схема методу getelevent ()  СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ФУНКЦІЙ, ВИКОРИСТАНИХ У БЛОК-СХЕМІ АЛГОРИТМУ І ПРОГРАМІ, ТА ЇХ ПОЯСНЕННЯ с, b – числа дійсного типу які є межами масиву; х – змінна дійсного типу, якій присвоюється значення елемента масиву; k – змінна дійсного типу, якій присвоюється значення кількості від’ємних елементів масиву; n – змінна дійсного типу, яка встановлює розмірність масиву; i, j, num, aindex – змінні дійсного типу, які встановлюють номер елемента масиву; u – змінна, яка використовується при сортуванні елементів масиву; min – змінна дійсного типу, якій надається значення найменшого елемента масиву; Main() – головний метод; vvid() – метод, в якому вводяться дані; meji() – метод, в якому задаються межі масиву; vuvid() – метод, в якому виводиться значення виразу на екран; kikist() – метод, в якому визначається кількість від’ємних елементів масиву; summamod() – метод для обчислення суми елементів масиву; sort() – метод для сортування елементів масиву; this[x] – індексатор, для роботи з елементами масиву; getelevent() – метод, призначений для виведення на екран певного елемента масиву; Console.WriteLine () – метод виводу даних, який належить класу Console; Console.ReadLine() – метод вводу даних який належить класу Console; Convert.ToDouble() – метод перетворення типу змінної в тип double; Math.Pow(x,y) – математичний метод для піднесення елементу до певного степіня; new – оператор, який створює об’єкт; class Program – клас Program, який містить метод Main(). class C1 – клас C1, який містить методи vvid(), meji(), vuvid(); class C2 – клас C2, який наслідує клас C1 і містить методи kikist(), summamod(), sort(), getelevent(), індексатор this[x]. ТЕКСТ ПРОГРАМИ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { C2 l = new C2(); l.meji(); l.vvid(); l.getelevent(); l.sumamod(); l.kikist(); l.sort(); l.vuvid(); Console.ReadLine(); } } class C1 { public double s, min, x; public int k, n, i, u, j,num, c, b, aindex; public double[] a = new double[1000]; public bool error; public void meji() { Console.WriteLine("Введіть c"); c = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Введіть b"); b = Convert.ToInt32(Console.ReadLine()); n = b - c + 1; } public void vvid() { for (i = 0; i < n; i++) { Console.WriteLine("a" + "[" + (i+c) + "]="); a[i] = Convert.ToDouble(Console.ReadLine()); } } public void vuvid() { for (i = 0; i < n; i++) { Console.WriteLine("a[" + (i+c) + "]=" +a[i]); } } } class C2 : C1 { public void kikist() { for (i = 0; i < n ; i++) { if (a[i]<0) { k++; a[i] = Math.Pow(Math.Abs(a[i]), 2); } } Console.WriteLine("kikist=" + k); } public void sumamod() { min = Math.Abs(a[0]); for (i = 0; i < n; i++) if (Math.Abs(a[i]) < min) { min = Math.Abs(a[i]); num = i; } for (i = num; i < n; i++) { s += Math.Abs(a[i]); } Console.WriteLine("suma=" + s); } public void sort() { for (i = 0; i < n; i++) { u = i; x = a[i]; for (j = i + 1; j < n+1; j++) { if (a[j] < x) { u = j; x = a[j]; a[u] = a[i]; a[i] = x; } } } } public double this[int index] { set { if(index>=c && index>=b) { error=false; a[index]=value; } else error = true; } get { if (index >= c && index <= b) { error = false; return a[index - c]; } else { error = true; return 0; } } } public void getelevent() { Console.WriteLine("aindex="); aindex = Convert.ToInt32(Console.ReadLine()); x = this[aindex]; if (error==true) Console.WriteLine("елемент не існує"); else Console.WriteLine("a[" +aindex +"]=" +x); } } } РЕЗУЛЬТАТ РОБОТИ ПРОГРАМИ 
Антиботан аватар за замовчуванням

04.06.2013 21:06-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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