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

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

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

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

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

Рік:
2016
Тип роботи:
Лабораторна робота
Предмет:
Алгоритмічні мови та програмування Частина 2
Варіант:
21

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»  З В І Т до лабораторної роботи №3 з курсу: «Алгоритмічні мови та програмування, ч. 2» на тему: «Масиви. Робота з масивами» Варіант № 21 Мета роботи – вивчити синтаксис опису і використання у програмах змінних типу масивів та властивостей. Навчитися складати та відлагоджувати програми з використанням індексаторів при роботі з масивами. 1.Завдання Скласти блок-схеми алгоритмів та програму мовою С# для роботи з одномірним масивом цілих чисел (вектором). Забезпечити наступні можливості: задання довільних цілих границь індексів при створенні об'єкта; звертання до окремого елемента масиву з контролем виходу за межі масиву; розрахунок за алгоритмом, згідно з завданням, отриманим від викладача за табл. 2; вивід на екран елемента масиву по заданому індексі й усього масиву. Програма повинна демонструвати всі розроблені елементи класу.  2.Блок-схеми алгоритму програми Метод «GetMaxlndex ()» / Метод « Mult ()» / Метод «Change ()»/ 3.Список ідентифікаторів констант, змінних, процедур і функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення. int startIndex - стартовий iндекс; int endIndex - кiнцевий індекс; class Array – клас надає методи для створення, зміни, пошуку і сортування масивів, тобто виступає в ролі базового класу для всіх масивів в середовищі CLR; Console.WriteLine – метод, що записує поточну ознаку кінця рядка в стандартний вихідний потік; Console.Write – метод, що записує текстове представлення заданого значення або значень в стандартний вихідний потік; for (…) – цикл з передумовою; get - ключове слово get визначає метод доступу в властивості або індексатора, який витягує значення властивості або елемент індексатора; set - Ключове слово set визначає метод доступу в властивості або індексатора, який призначає значення властивості елемента індексатора; return - перериває виконання методу, в якому воно присутнє і повертає управління викликає методу; start1 - стартовий iндекс для чисел з непарним iндексом; start2 - стартовий iндекс для чисел з парним індексом; while - оператор виконує оператор або блок операторів, поки певний вираз не прийме значення false; Convert.ToInt32 - метод перетворює задане значення в 32-бітове ціле число зі знаком; Console.ReadKey() - метод, що затримує вікно консолю; if-else – інструкція, що визначає яка інструкція буде виконана. 4.Текст програми using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace lab_3 { class Array { int length; int startIndex; // стартовий iндекс int endIndex; // кiнцевий iндекс int[] a; // створення масиву, за заданими межами iндексiв..наприклад 2..8 public void Create(int _startIndex, int _endIndex) { startIndex = _startIndex; endIndex = _endIndex; length = endIndex - startIndex + 1; a = new int[length]; Console.WriteLine("Введiть масив: "); for (int i = 0; i < length; i++) { Console.Write("a[" + (i + startIndex) + "] = "); a[i] = Convert.ToInt32(Console.ReadLine()); } } // для iндексацiї масиву public int this[int i] { get { if (CorrectIndex(i)) return a[i - startIndex]; else return -9999; } set { if (CorrectIndex(i)) a[i] = value; } } // перевiрка чи коректний iндекс private bool CorrectIndex(int index) { if (index >= startIndex && index <= endIndex) return true; else return false; } // вивiд по заданому iндексi public void PrintByIndex(int index) { if (CorrectIndex(index)) Console.WriteLine("[" + index + "] element: " + a[index - startIndex]); else Console.WriteLine("Некоректний iндекс"); } // вивiд всього масиву public void Print() { Console.WriteLine("Array is: "); for (int i = 0; i < length; i++) Console.Write(a[i] + " "); } static void Main(string[] args) { Array a = new Array(); Console.WriteLine("Введiть межi масиву: "); Console.Write("Перша межа:"); int start = Convert.ToInt32(Console.ReadLine()); Console.Write("Друга межа:"); int end = Convert.ToInt32(Console.ReadLine()); double sum = summ(a); Console.WriteLine("\nСума відємних - " + sum); int minInd = minIndex(a); int maxInd = maxIndex(a); Console.Write("Min - " + a[minInd] + " index = " + minInd); Console.Write("\nMax - " + a[maxInd] + " index = " + maxInd); double multiSum = 1; if (maxInd < minInd) { int tmp = minInd; minInd = maxInd; maxInd = tmp; } for (int i = minInd; i <= maxInd; i++)// 1 3 5 { multiSum *= a[i]; } Console.WriteLine("\nДобуток між макс і мін - " + multiSum); for (int i = 0; i < a.Length - 1; i++) for (int j = i + 1; j < a.Length; j++) { if (a[i] < a[j]) { int tmp = a[i]; a[i] = a[j]; a[j] = tmp; } } for (int i = 0; i < a.Length; i++) Console.WriteLine(a[i].ToString() + ' '); Console.ReadKey(); } public static void sort(int[] ar)// 8 1 -3 9 -5 { } public static double summ(int[] a) { double summ = 0; for (int i = 0; i < a.Length; i++) if (a[i] < 0) summ += a[i]; return summ; } public static int maxIndex(int[] a) { int max = a[0]; int indexMax = 0; for (int i = 1; i < a.Length; i++) if (Math.Abs(a[i]) > Math.Abs(max)) { max = a[i]; indexMax = i; } return indexMax; } public static int minIndex(int[] a) { int min = a[0]; int indexMin = 0; for (int i = 1; i < a.Length; i++) if (Math.Abs(a[i]) < Math.Abs(min)) { min = a[i]; indexMin = i; } return indexMin; } a.Create(start, end); a.Print(); Console.Write("\nВведiть номер елемента для виведення: "); int index = Convert.ToInt32(Console.ReadLine()); a.PrintByIndex(index); a.Print(); Console.ReadKey(); } } } 5.Результати роботи програми  6.Висновок Виконуючи цю лабораторну роботу я вчила синтаксис опису і використання у програмах змінних типу масивів та властивостей. Вчилася складати та відлагоджувати програми з використанням індексаторів при роботі з масивами.
Антиботан аватар за замовчуванням

15.12.2016 20:25

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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