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

ПРОГРАМИ З ВИКОРИСТАННЯМ МАСИВІВ ТА ІНДЕКСАТОРІВ

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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА З В І Т до лабораторної роботи №3 з курсу: «Алгоритмічні мови та програмування» на тему: «ПРОГРАМИ З ВИКОРИСТАННЯМ МАСИВІВ ТА ІНДЕКСАТОРІВ» Варіант № 6 Львів-2011 Мета роботи – вивчити синтаксис опису і використання у програмах змінних типу масивів та властивостей. Навчитися складати та відлагоджувати програми з використанням індексаторів при роботі з масивами. ЗАВДАННЯ Вивчити синтаксис опису і використання у програмах змінних типу масивів та властивостей, а також індексаторів мови С#. Скласти блок-схеми алгоритмів та програму мовою С# для роботи з одномірним масивом цілих чисел (вектором). Забезпечити наступні можливості: задання довільних цілих границь індексів при створенні об'єкта; звертання до окремого елемента масиву з контролем виходу за межі масиву; розрахунок за алгоритмом, згідно з завданням, отриманим від викладача за табл. 2; вивід на екран елемента масиву по заданому індексі й усього масиву. Програма повинна демонструвати всі розроблені елементи класу. 6 В одномірному масиві, що складається з п дійсних елементів, обчислити: мінімальний елемент масиву; суму елементів масиву, розташованих між першим й останнім позитивними елементами. Перетворити масив таким чином, щоб спочатку розташовувалися всі елементи рівні нулю, а потім - всі інші.   БЛОК-СХЕМИ Клас Array Метод Field Метод ScanArray Метод min Так Ні Метод Suma так ні так Метод ArrayTransformation \ Метод ElementOutput Так Ні class Program Метод Main СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ФУНКЦІЙ, ВИКОРИСТАНИХ У БЛОК-СХЕМІ АЛГОРИТМУ І ПРОГРАМІ, ТА ЇХ ПОЯСНЕННЯ a,b,h – змінні дійсного типу, які є аргументами виразу; x,y – змінна дійсного типу, якій надається значення результату обчислення виразу; static void Main(string[]args) – головна функція; Console.ReadLine() - зчитування стрічки з консоля; Convert.Parse() - конвертування текстової змінної в число типу Double; Console.WriteLine() – метод виведення на екран; ТЕКСТПРОГРАМИ using System; using System.Collections.Generic; using System.Text; namespace ArrayWork { class Array { int Length; int size1; int size2; double[] a; bool ErrFlag; int aIndex; public void Field() { Console.WriteLine("Введiть межi масиву: "); Console.Write("Перша межа:"); size1 = Convert.ToInt32(Console.ReadLine()); Console.Write("Друга межа:"); size2 = Convert.ToInt32(Console.ReadLine()); Length = size2 - size1 + 1; } public void ScanArray() { a = new double[Length]; int x = size1; Console.WriteLine("Введiть массив: "); for (int i = 0; i < Length; i++) { Console.Write("a[" + x + "]="); a[i] = Convert.ToDouble(Console.ReadLine()); x++; } foreach (double z in a) Console.Write("\t" + z); Console.Write("\n"); } public double this[int index] { get { if (ok(index)) { ErrFlag = false; return a[index - size1]; } else { ErrFlag = true; return 0; } } set { if (ok(index)) { a[index] = value; ErrFlag = false; } else ErrFlag = true; } } private bool ok(int index) { if (index >= size1 & index <= size2) return true; else return false; } public void MinElemet() { double min = a[0]; for (int i = 0; i < Length; i++) { if (min >= a[i]) { min = a[i]; } } Console.WriteLine("Мiнiмальний елемент масиву:" + min); } public void Summ() { int cIndex1 = 0; int cIndex2 = 0; double bSumm = 0; int z = 0; for (int i = 0; i < Length; i++) { if (a[i] > 0.0 && z == 0) { cIndex1 = i; z++; } else if (a[i] > 0.0) cIndex2 = i; } for (int i = cIndex1 + 1; i < cIndex2; i++) bSumm += a[i]; Console.WriteLine("Cума елементiв:" + bSumm); } public void ArrayTransformation() { double[] b = new double[Length]; int aIndex = 0; for (int i = 0; i < Length; i++) if (a[i] == 0.0) { b[aIndex] = a[i]; aIndex++; } for (int i = 0; i < Length; i++) if (a[i] != 0.0) { b[aIndex] = a[i]; aIndex++; } foreach (double x in b) Console.Write("\t" + x); Console.Write("\n"); } public void ElementOutput() { double x; Console.Write("Введiть номер елемента для виведення: "); aIndex = Convert.ToInt32(Console.ReadLine()); x = this[aIndex]; if (this.ErrFlag) Console.WriteLine("Ви вказали не правильний номер елемента"); else Console.WriteLine("a[" + aIndex + "]=" + x); } } class Program { static void Main(string[] args) { Array a = new Array(); a.Field(); a.ScanArray(); a.MinElemet(); a.Summ(); a.ArrayTransformation(); a.ElementOutput(); Console.ReadLine(); } } } РЕЗУЛЬТАТ РОБОТИ ПРОГРАМИ Введiть межi масиву: Перша межа:-5 Друга межа:5 Введiть массив: a[-5]=-4,9 a[-4]=-3,6 a[-3]=-2,4 a[-2]=-1,5 a[-1]=0 a[0]=1,5 a[1]=2,6 a[2]=3,7 a[3]=4,5 a[4]=4,7 a[5]=4,9 -4,9 -3,6 -2,4 -1,5 0 1,5 2,6 3,7 4,5 4,7 4,9 Мiнiмальний елемент масиву:-4,9 Cума елементiв:15,5 0 -4,9 -3,6 -2,4 -1,5 1,5 2,6 3,7 4,5 4,7 4,9 Введiть номер елемента для виведення: 5 a[5]=4,9
Антиботан аватар за замовчуванням

16.03.2013 15:19

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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