Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Void main()



{int i,j,sum,stk;

int matr[5][6], mas[5];

cout<<"Input matr\n";

// Ввод матрицы

for(i=0; i<5; i++)

for(j=0; j<6; j++) cin>> *(*(matr+i)+j);

/ / Определение суммы элементов строк

for(i=0; i<5; i++)

{sum=0;

for(j=0; j<6; j++)

sum+=*(*(matr+i)+j); *(mas+i)=sum;}

cout<< "Result mas\n";

for(i=0; i<5; i++)

cout<< *(mas+i)<<" ";

// Сортировка вектора mas по возрастанию

for(i=1; i < 5; i++)

for(j=0; j < 5-i; j ++)

if (*(mas+j)> *(mas+j+1))

{stk=*(mas+j); *(mas+j)= *(mas+j+1); *(mas+j+1)=stk;}

// Вывод отсортированного массива

cout<< "Result otsortirov mas\n";

for(i=0; i<5; i++)

cout<< *(mas+i)<<" ";

getch(); }

Приклад 2.4 Створити динамічний масив з n елементів (значення n ввести с клавіатури). Знайти кількість від’ємних елементів масиву.

#include <iostream.h>

#include <conio.h>

void main()

{

int n,i;

int *mas;

cout<<"Vvedit kilkist' strok (n)"<<endl;

cin>>n;

mas=new int[n];//створюємо динамічний масив

//Введення масиву

for(i=0;i<n;i++)

cin>>mas[i];

int kil(0);

//Підраховуємо кількість від’ємних елементів

for(i=0;i<n;i++)

if(mas[i]<0)

kil++;

cout<<"kil="<<kil<<endl;

delete [] mas; //вивільнюємо пам’ять

getch();

}

Приклад 2.5 Створити динамічний масив з n строк та m стовпців (значення n та m ввести с клавіатури). Знайти суму парних елементів масиву.

#include <iostream.h>

#include <conio.h>

void main()

{

int n,m,i;

int **mas;

cout<<"Vveditе kilkist' strok (n) i stolbcov (m)"<<endl;

cin>>n>>m;

//створюємо динамічний масив

mas=new int*[n]; //створюємо масив покажчиків

for(i=0;i<n;i++)

mas[i]=new int[m]; //створюємо динамічні строки

cout<<"Vveditе elementi massiva"<<endl;

//заповнюємо масив з клавіатури

for(i=0;i<n;i++)

for(int j=0;j<m;j++)

cin>>mas[i][j];

// Виведення на экран вихідного мисиву

for(i=0;i<n;i++,cout<<endl)

for(int j=0;j<m;j++)

cout<<mas[i][j]<<"\t";

int sum(0);

//Підраховуємо суму парних елементів

for(i=0;i<n;i++)

for(int j=0;j<m;j++)

if(mas[i][j]%2==0)

sum+=mas[i][j];

cout<<"sum=="<<sum<<endl;

// вивільнюємо пам’ять

for(i=0;i<n;i++)

delete[]mas[i];//вивільнюємо строки

delete []mas; //вивільнюємо масив покажчиків

getch();//затримка екрану

}

2.3 Контрольні запитання а завдання

1. Як розуміти вираз *(c+i), де c — ім’я масиву?

2. Що таке розадресування у мові С++?

3. Які дії можна виконувати над покажчиками?

4. Напишіть програму сортування масиву по правилу зростання з використанням покажчиків.

5. Як задати змінний розмір масиву?

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

1. Знайти найменші елементи у кожному рядку матриці та номер максимального з них.

2. Відсортувати по зростанню перший рядок та другий стовпець матриці.

3. Знайти найбільші елементи у кожному стовпці матриці та номер найменшого серед них.

4. Знайти суми кожного рядка матриці та найменшу серед них.

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

6. Знайти суму додатніх непарних елементів матриці, що стоять нижче побічної діагоналі.

7. Визначити, скільки елементів матриці в рядках з парними номерами перевищують відношення максимального елемента до мінімального?

8. Відсортувати за зростанням добутки від’ємних елементів рядків матриці.

9. Відсортувати по зменшенню масив максимальних елементів стовпців матриці.

10. У матриці знайти суму парних елементів, що лежать вище головної діагоналі. Якщо вона ділиться на 3, обнулити побічну діагональ.

11.У матриці відсортувати за зростанням елементи головної діагоналі та поміняти місцями максимальний елемент з мінімальним.

12. Переставити рядки матриці відповідно до зростання елементів другого стовпця.

13. Знайти мінімальний елемент матриці, і якщо він парний та парна строка його розташування — відсортувати третій стовпець матриці.

14. Переставити стовпці матриці у відповідності до зростання елементів третього рядка.

15. У кожному рядку матриці знайти кількість елементів, що діляться на 3, та відсортувати ці значення з находженням екстремумів.

16. У матриці в рядках з від’ємним елементом на головній діагоналі знайти найбільший елемент рядка та мінімум серед них.

17. У матриці замінити нулями всі від’ємні елементи над головною діагоналлю. Знайти місце максимуму серед елементів нижче побічної діагоналі.

18. Переписати до масиву В всі елементи матриці А, більші значення x. Якщо в черговому рядку таких немає, записувати до В значення 0.

19. Переписати до масиву С всі значення матриці D, менші заданого у та знайти добуток цих елементів і розташувати їх за зростанням.

20. У вигляді матриці задано таблицю футбольного чемпіонату. Визначити, у скількох команд кількість виграшів перевищує кількість поразок.

21. Написати програму сортування команд за зменшенням кількості перемог, використовуючи таблицю футбольного чемпіонату.

22. Знайти максимальний елемент матриці, і якщо його номер стовпця непарний, то відсортувати цей стовпець.

23. Вихідну матрицю відсортувати за зростанням кількості додатних елементів у стовпцях.

24. Серед елементів матриці нижче побічної діагоналі відібрати ті, що перевищують максимум у другому стовпці матриці.

25. У квадратній матриці провести сортування тих рядків, у яких на побічній діагоналі стоїть парне число.

26. У стовпцях матриці знайти максимуми та відсортувати стовпці за зменшенням.

27. Переставити стовпці матриці відповідно до зростання елементів другого рядка.

28. Знайти добутки діагоналей квадратної матриці. Відсортувати перший рядок за зростанням.

29. Задано дві матриці розміром 3*3. Перемножити їх за правилом "рядок на стовпець".

30. Знайти скалярні добутки першого рядка матриці на всі інші.





Дата публикования: 2015-04-07; Прочитано: 2854 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...