DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт до лабораторної роботи №3 з курсу «Алгоритмічні мови та програмування, ч. 2» на тему «Масиви. Робота з масивами»

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

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

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

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

Про що ця робота

Звіт до лабораторної роботи з дисципліни алгоритмічні мови та програмування присвячено вивченню масивів та індексаторів мовою C#. У роботі наведено блок-схеми, лістинг програми для роботи з одномірними масивами та висновки.

У роботі розглядаються

  • Масиви в C#
  • Індексатори
  • Обробка одномірних масивів
  • Алгоритмічні мови та програмування
  • Класи та об'єкти
  • Пошук мінімуму та максимуму

Зміст і розділи

  1. Мета роботи
  2. Завдання
  3. Блок-схеми алгоритму програми
  4. Список ідентифікаторів
  5. Текст програми
  6. Результати роботи програми
  7. Висновок
Для кого:Студенти технічних спеціальностей, викладачі програмування.
Викладачі:Викладач кафедри

Ключові поняття

масивC#класметодалгоритмцикліндексконсоль

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»  З В І Т до лабораторної роботи №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.Висновок Виконуючи цю лабораторну роботу я вчила синтаксис опису і використання у програмах змінних типу масивів та властивостей. Вчилася складати та відлагоджувати програми з використанням індексаторів при роботі з масивами.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

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

Admin

26.02.2023 12:38

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