DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Масиви. Робота з масивами

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

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

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

Рік:
2018
Тип роботи:
Лабораторна робота
Предмет:
Технологія програмування та створення програмних продуктів
Група:
БІ 11
Варіант:
Варіант 6

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА Кафедра БІТ  З В І Т до лабораторної роботи №3 з курсу: «Технології програмування» на тему: «Масиви. Робота з масивами» Варіант № 6 Мета роботи – вивчити синтаксис опису і використання у програмах змінних типу масивів та властивостей. Навчитися складати та відлагоджувати програми з використанням індексаторів при роботі з масивами. Завдання 1. Вивчити синтаксис опису і використання у програмах змінних типу масивів та властивостей, а також індексаторів мови С#. 2. Скласти блок-схеми алгоритмів та програму мовою С# для роботи з одномірним масивом цілих чисел (вектором). Забезпечити наступні можливості: задання довільних цілих границь індексів при створенні об'єкта; звертання до окремого елемента масиву з контролем виходу за межі масиву; розрахунок за алгоритмом, згідно з завданням: в одномірному масиві, що складається з n дійсних елементів, обчислити: мінімальний елемент масиву; суму елементів масиву, розташованих між першим й останнім позитивними елементами. Перетворити масив таким чином, щоб спочатку розташовувалися всі елементи рівні нулю, а потім - всі інші; вивід на екран елемента масиву по заданому індексі й усього масиву. Програма повинна демонструвати всі розроблені елементи класу. Блок-схема алгоритму програми Метод «Main ()» / Метод «ReadBound»/ Метод «ReadArray()» / Метод «Vyv ()» / Метод «Readk ()» / Метод доступу «Get()» / Метод доступу «Set()» / Метод zvenIn() / Min() / Метод «Sort()» / Summa() / Список ідентифікаторів констант, змінних, процедур і функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення. start, finish, size – змінні цілого типу, які є довільними індексами масиву і розміром масиву; [] w – масив з елементів дійсного типу; i – змінна цілого типу, яка є індексом масиву; Errr – змінна логічного типу, що визначає чи відбувся вихід за межі масиву; index – змінна цілого типу, що є формальним індексом; S – змінна дійсного типу, якій надається значення результату обчислення виразу; k – змінна цілого типу, яка є індекс масиву; x – змінна дійсного типу, яка є елементом масиву; minel – змінна дійсного типу, яка є мінімальним елементом масиву; Sum – змінна дійсного типу, яка є сумою елементів масиву; InFirst/InLast – змінна цілого типу, що є першим/останнім додатковим елементом масиву; y – змінна цілого типу, яка приймає значення індексу масиву; q – змінна цілого типу, яка приймає значення індексу масиву; Main( ) – головний метод; Console.ReadLine() – метод, що затримує вікно консолю; public – рівень доступу, у якому члени доступні з будь-якого місця програми; double – тип, з плаваючою точкою подвійної точності; int – цілий знаковий тип; get/set – метод, що отримує/встановлює властивість; foreach() – оператор, що перебирає елементи; Console.Write – метод, що виводить текст на екран; double.Parse – метод, що переводить дані типу string в double; Int32.Parse – метод, що переводить дані типу string в int; Console.ReadLine() – метод, що зчитує дані з консолю; ReadBound() – метод, що відповідає за вивід допоміжного тексту на екран і зчитування з екрану значення довільних індексів масиву; ReadArray() – метод, що відповідає за вивід допоміжного тексту на екран і зчитування з екрану значення елементів масиву; Readk() – метод, що відповідає за вивід допоміжного тексту на екран і зчитування з екрану значення k; zvenIn() – метод, що визначає чи відбувся вихід за масив і виводить відповідне значення чи повідомлення в кожному випадку; Min() – метод, що відповідає за обрахування мінімального елемента; Summa() – метод, що відповідає за обрахування суми елементів масиву; Length – метод, що визначає розмір елемента; for (…) – цикл з передумовою; Vyv() – метод, що відповідає за виведення елементів масиву на екран. Остаточна версія програми using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main() { Obrah z = new Obrah(); z.ReadBound(); z.ReadArray(); z.Readk(); z.zvenIn(); z.Min(); z.Summa(); z.Vyv(); z.Sort(); Console.ReadLine(); } } class Read1 { protected int start, finish, size; public void ReadBound() { Console.Write("Enter the initial bound \n start="); start = Int32.Parse(Console.ReadLine()); Console.Write("Enter the ultimate bound \n finish="); finish = Int32.Parse(Console.ReadLine()); size = finish - start+1; } public double[] w; protected int i; public void ReadArray() { Console.WriteLine("Enter the array"); w = new double[size]; for ( i= 0; i < w.Length; i++) { Console.Write("w[{0}] = ", i+start); w[i] = double.Parse(Console.ReadLine()); } } public void Vyv() { foreach (double y in w) Console.Write("\t" + y); } } class Opr : Read1 { public int k; public void Readk() { Console.Write("Enter the value index \n k="); k = Int32.Parse(Console.ReadLine()); } private bool Errr; private double this[int index] { get { if ((index >= start) && (index <= finish)) { return w[index - start]; Errr = false; } else { Errr = true; return 0; } } set { if ((index >= start) && (index <= finish)) { w[index] = value; Errr = false; } else Errr = true; } } public void zvenIn() { double x; x = this[k]; if (this.Errr) { Console.WriteLine("\n Going beyond the array!"); } else { Console.WriteLine(" \n w[{0}]={1}", k, x); } } } class Obrah : Opr { private double minel; public void Min() { minel=w[0]; for (i = 0; i < w.Length; i++) { if (w[i] <= minel) { minel = w[i]; } } Console.WriteLine("Min element = {0}", minel); } private double Sum; private int InFirst, InLast; public void Summa() { Sum = 0; for (i = 0; i < w.Length; ++i) { if (w[i] > 0) { InFirst = i; break; } } for (i=w.Length-1;i>=0; --i) { if (w[i] > 0) { InLast = i; break; } } for(i=InFirst+1;i<InLast;i++) { Sum += w[i]; } Console.WriteLine("Summa = {0}", Sum); } private int y, q; private double x; public void Sort() { for (i = 0; i < w.Length; i++) { y = i; x = w[i]; for (q = i + 1; q < w.Length; q++) { if (w[q] == 0) { y = q; x = w[y]; w[q] = w[i]; w[i] = x; } } } Console.WriteLine("\n Sorted array"); Vyv(); } } } Результати роботи програми /
Антиботан аватар за замовчуванням

08.05.2018 22:18

Коментарі

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

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

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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