Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Завдання 13.1.






Варіанти індивідуальних завдань.

Створити й вивести масив Zi з елементами (кількість елементів №варіанта + 10), які обчислюються, відповідно до варіанта, наведеним у таблиці:

 


1) Z[i]=a[i]+b[i];

2) z=ab;

3) z=tg(b)-a;

4) z=(a+b)2;

5) z=5ab-4;

6) z=sin(a)+b;

7) z=b tga;

8) z=a2+3b;

9) z=(|ab|)1/4;

10) z=ab-?;

11) z=a-2b;

12) z=a tgb;

13) z=cos(ab);

14) z=|a-b|;

15) z=ctg(2a)-b;

16) z=e3ab;

17) z=4ba-b;

18) z=2a-b;

19) z=|12a-cos(b)|;

20) z=2a-b;

21) z=tg(a+b);

22) z=ln|a+4b|;

23) z=3ab-cos(b);

24) z=4a+eb;

25) z=5a-2b,



де

k– ціле число, що вводить користувачем із клавіатури. Значення функції вибираються з таблиці 1

Таблиця 13.1.

Функція f(x)
  9, 2cosi2–|sinx/1, 1|
  12, 4sin|x/2, 1|–8, 3cos1, 2x
  |cosx/2, 7|+9, 1sin(1, 2x+1)
  |sinx/3, 12+cosx2|–8, 3sin3x
  cos|2x|/1, 12–cos(3x–2)+6, 15
  sinxcosx2sin(x+1, 4) +5, 14
  |sin(2x–1, 5) +3sinx2|+2, 38
  cosx2sin(2x–l)+4, 29
  cos(x2+l)–|sin2x–5, 76|
  sinx–cosx3sin(x2–4, 2) +4, 27
  |sin12xcos|2x|/3|+4, 21
  cosx3/2, 1+cosx2/1, 1–8.3sin(3x+1)
  sinx2cosx3–sinx+5, 2
  2sinxsin(2x–1, 5) cos(2x+1, 5)–6
  |cosx2–0, 51|sin(3x–4)–4, 44
  cos2, 1xsin|x|/0, 15–5, 8
  |cos2x3+2sin(x/l, 2–3, 4)|+10, 51cos|3x|
  |sin(x2/1, 5–2)|+11, 73cos(1, 6x–1)
  13, 4cos|x|sin(x2–2, 25)
  |соs(x2–3, 8)|/4, 5–9, 7sin(x–3, 1)
  13, 4sin(–1, 26) cos|x/7, 5|
  2sin|2x|cos2x–11, 6sin(x/0, 4–1)
  sin|x|/0, 1+ 9, 4sin(3x–2, 5)
  10, 8cos(x2/1, 13) |sin(x+1, 4)
  11, 2cos(2x–1)+|sinl, 5x|/1, 7

 


Відповідно до варіанта, виконати з отриманим масивом наступне завдання:

1. Створити й вивести на друк новий масив, що складається з додатних елементів масиву Z.

2. Визначити суму 3 й 6 додатних елементів.

3. Другий від’ємний елемент замінити мінімальним.

4. Визначити мінімальний елемент серед додатних елементів.

5. Ненульові елементи масиву перенести в інший масив, розташувавши їх у зворотному порядку.

6. Обчислити суму перших чотирьох від’ємних елементів.

7. Вивести номер передостаннього додатного елемента.

8. Створити масив з від’ємних елементів масиву.

9. Знайти добуток другого й четвертого елементів більших 3.

10. Максимальний елемент поміняти місцями з мінімальним елементом.

11. Останній від’ємний елемент поміняти місцями з максимальним елементом.

12. Обчислити добуток другого від’ємного й п'ятого елементів.

13. Сформувати інший масив з елементів масиву, які більше 1.

14. Вивести номери двох найбільших елементів масиву. Обчислити їхню суму.

15. Визначити чи є серед від’ємних елементів елементи з максимальними значеннями.

16. Максимальний елемент поміняти з 4.

17. Третій додатний елемент замінити максимальним.

18. Визначити номер п'ятого від’ємного елемента.

19. Обчислити добуток перших трьох додатних елементів і визначити їх номера.

20. Обчислити суму другого додатного й третього елемента.

21. Створити новий масив з елементів менших 3.

22. Створити масив, значення яких перебувають між значеннями 3 елемента й максимального значення.

23. Знайти добуток номерів найменших елементів серед додатних.

24. Визначити суму номерів 2 й 3 від’ємних елементів.

25. Визначити номера 2 й 4 додатних елементів.

Методи класу System.Array

Масиви в C# засновані на класі System.Array. У всіх класів, що є масивами, багато загального, оскільки всі вони є нащадками класу System.Array. Клас Array має досить велике число власних методів і властивостей.

Приклад:

using System;

namespace test

{

class Test

{

static void Main(string[] args)

{

//Оголошення масиву.

int [] num = {4, -5, 2, 0, 23};

//Виводимо масив.

foreach (int i in num)

{

Console.WriteLine(i.ToString());

}

//Перевертаємо масив.

Console.WriteLine(" Перевернений масив");

Array.Reverse(num);

foreach (int i in num)

{

Console.WriteLine(i.ToString());

}

//Сортуємо масив.

Array.Sort(num);

Console.WriteLine(" Відсортований масив");

foreach (int i in num)

{

Console.WriteLine(i.ToString());

}

//Обнуляем масив.

Array.Clear(num, 0, 5);

Console.WriteLine(" Обнуленный масив");

foreach (int i in num)

{

Console.WriteLine(i.ToString());

}

}

}

}

Тут використаються статичні методи класу Array для сортування, перекидання й очищення масиву. Зрозуміло, ці методи не єдині.

У класі Array є, наприклад, ще вбудований статичний метод IndexOf призначений для пошуку елемента в масиві. Приклад використання:

int k = 5;

Console.WriteLine(" Число {0} перебуває на {1} місці.", k, Array.IndexOf(num, k));

Цей метод повертає індекс шуканого елемента (нумерація з нуля). Якщо такого елемента немає, то повертається -1.

Зверніть увагу, що ці методи діють для вбудованих типів (у нашому прикладі масив був типу int). Для користувальницьких типів даних їхнє застосування теж можливо. Деякі властивості й методи класу Array наведені в таблицях 13. 2-4.

 

Таблиця 13.2. Властивості класу Array

Властивість Опис
Length Число елементів масиву
Rank Розмірність масиву

Таблиця 13.3. Статичні методи класу Array

Метод Опис
BinarySearch Двійковий пошук. Визначає індекс першого входження зразка у відсортований масив, використовуючи алгоритм двійкового пошуку
Clear Виконує початкову ініціалізацію елементів. Залежно від типу елементів встановлює значення 0 для арифметичного типу, false - для логічного типу, Null для посилань, " " - для рядків.
Copy Копіювання частини або всього масиву в інший масив.
IndexOf Індекс першого входження зразка в масив.
LastIndexOf Індекс останнього входження зразка в масив.
Reverse Обіг одномірного масиву. Виконує обіг масиву, переставляючи елементи у зворотному порядку
Sort Сортування масиву.

Таблиця 13.4. Динамічні методи класу Array

Метод Опис
ToString Перетворення елемента масиву в строкову змінну
Clone Дозволяє створити плоску або глибоку копію масиву. У першому випадку створюються тільки елементи першого рівня, а посилання вказують на ті ж самі об'єкти. У другому випадку копіюються об'єкти на всіх рівнях. Для масивів створюється тільки плоска копія.
CopyTo Копіюються всі елементи одномірного масиву в інший одномірний масив, починаючи із заданого індексу: col1.CopyTo(col2, 0);
GetLength Повертає число елементів масиву по зазначеному вимірі.
GetLowerBound, GetUpperBound Повертає нижню й верхню границю по зазначеному вимірі. Для масивів нижня границя завжди дорівнює нулю.
GetValue, SetValue Повертає або встановлює значення елемента масиву із зазначеними індексами.

 

 

Приклад, використання вище наведених методів, для роботи з масивами:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace Array1

{

class Program

{

static void Main(string[] args)

{

//Оголошення масиву.

int[] Arr1 = { 4, -5, 2, 0, 23 };

//Виводимо масив.

foreach (int i in Arr1)

{

Console.WriteLine(i.ToString());

}

//Число елементів масиву (Arr1.Length)

Console.WriteLine(" Кількість елементів масиву = " + Arr1.Length);

//Розмірність масиву (Rank)

Console.WriteLine(" Розмірність масиву = " + Arr1.Rank);

// Верхня границя масиву (GetUpperBound)

Console.WriteLine(" Верхня границя масиву = " + Arr1.GetUpperBound(0));

// Нижня границя масиву (GetLowerBound)

Console.WriteLine(" Нижня границя масиву = {0}", Arr1.GetLowerBound(0));

//Прочитати значення 2-го елемента

Console.WriteLine(" Значення 2-го елемента = {0}", Arr1.GetValue(1));

//Змінити значення 2-го елемента на -11

Arr1.SetValue(-11, 1);

Console.WriteLine(" Змінене значення 2-го елемента = {0}", Arr1.GetValue(1));

//Оголошення масиву Arr2

//Кількість елементів масиву визначається як

//верхня границя масиву Arr1 + 1 (Arr1.GetUpperBound(0) + 1)

int [] Arr2 = new int[Arr1.GetUpperBound(0) + 1];

Console.WriteLine(" Скопійований масив");

//Копіювання масиву Arr1 в Arr2 починаючи з 0 елемента

Arr1.CopyTo(Arr2, 0);

foreach (int i in Arr2)

{

Console.WriteLine(i.ToString());

}

//Перевертаємо масив

Console.WriteLine(" Перевернений масив");

Array.Reverse(Arr1);

foreach (int i in Arr1)

{

Console.WriteLine(i.ToString());

}

// Пошук індексу в несортованому масиві елемента " 23"

Console.WriteLine(" Індекс елемента 23 =" + Array.IndexOf(Arr1, 23));

//Сортуємо масив.

Array.Sort(Arr1);

Console.WriteLine(" Відсортований масив");

foreach (int i in Arr1)

{

Console.WriteLine(i.ToString());

}

// Двійковий пошук індексу у відсортованому масиві елемента " 23"

Console.WriteLine(" Індекс елемента 23 =" + Array.BinarySearch(Arr1, 23));

Console.WriteLine(" Індекс елемента 23 після сортування =" + Array.IndexOf(Arr1, 23));

//Обнуляем масив.

Array.Clear(Arr1, 0, 5);

Console.WriteLine(" Обнуленный масив");

foreach (int i in Arr1)

{

Console.WriteLine(i.ToString());

}

//Оголошення масиву float

//Елементи зчитуються із клавіатури

Console.WriteLine(" Уведіть розмір масиву");

int Zise_Arr3 = int.Parse(Console.ReadLine());

float [] Arr3 = new float[Zise_Arr3];

Console.WriteLine(" Уведіть елементи масиву");

for(int ii=0; ii< Zise_Arr3; ii++)

{

Arr3[ii]=float.Parse(Console.ReadLine());

}

Console.WriteLine(" Уведений відсортований масив");

Array.Sort(Arr3);

for (int ii = 0; ii < Zise_Arr3; ii++)

{

Console.WriteLine(Arr3[ii].ToString());

}

//Пошук максимуму

float k = Arr3.Max();

Console.WriteLine(" Max=" + k.ToString());

//Пошук мінімуму

k = Arr3.Min();

Console.WriteLine(" Min=" + k.ToString());

//Порівняння двох масивів (Equals)

bool l = Array.Equals(Arr1, Arr2);

Console.WriteLine(" BOOL=" + l.ToString());

l = Array.Equals(Arr1, Arr1);

Console.WriteLine(" BOOL=" + l.ToString());

}

}

}

 

Завдання 13. 2. використанням методів класу System.Array.

Створити масив з елементами , де n, k – цілі числа, що вводять користувачем із клавіатури. Значення функції вибираються з таблиці 1. Вивести на екран значення масиву. Виконати завдання у відповідності з варіантом. Недостаючі завдання погодити в викладачем.

1. Визначити індекси мінімального елемента масиву. Обчислити добуток його від’ємних елементів.

2. Обчислити кількість елементів масиву, для яких виконується нерівність.

3. Обчислити добуток значень тих елементів, для яких справедлива нерівність.

4. Обчислити кількість позитивних елементів й їхній добуток.

5. Обчислити суму квадратів елементів, значення яких більше 1.

6. Обчислити добуток квадратів тих елементів, для яких виконується нерівність.

7. Обчислити кількість елементів масиву, для яких виконується нерівність і суму елементів, значення яких менше 9.

8. Обчислити добуток від’ємних елементів. Визначити індекси максимального елементу.

9. Обчислити суму діагональних елементів масиву й кількість негативних елементів.

10. Обчислити добуток елементів масиву, для яких справедлива нерівність.

11. Визначити індекси максимального елемента масиву. Обчислити добуток елементів вище головної діагоналі.

12. Обчислити добуток елементів перших двох рядків.

13. Обчислити суму елементів масиву вище головної діагоналі. Визначити індекси мінімального елемента.

14. Обчислити суму від’ємних елементів. Знайти максимальний елемент.

15. Обчислити добуток мінімального й максимального члена масиву.

16. Визначити індекси мінімального й максимального елементів масиву.

17. Значення елементів масиву рівні нулю замінити на 1. Визначити суму елементів нижче головної діагоналі.

18. Визначити кількість від’ємних і суму додатних елементів масиву.

19. Обчислити добуток елементів, для яких виконується нерівність.

20. Визначити індекси максимального й мінімального елементів масиву. Обчислити їхній добуток.

21. Обчислити добуток елементів вище головної діагоналі матриці й визначити їхню кількість.

22. Обчислити середнє арифметичне позитивних елементів масиву.

23. Обчислити суму елементів масиву, для яких виконується нерівність.

24. Обчислити суму діагональних елементів матриці й кількість елементів, значення яких менше 3.

25. Обчислити добуток елементів нижче головної діагоналі на суму елементів, які розташовані нижче головної діагоналі.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.024 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал