double arrow

Лабораторная работа 2.4. Массивы


Цель.Получить практические навыки работы с массивами. Научиться обрабатывать массивы с использованием циклов.

ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ

Задача 1. Напишите программу, которая принимает число N, заполняет массив размера N последовательными натуральными числами в обратном порядке и выводит его на экран.

#include <iostream>

using namespace std;

int main() {

int numbers[100];

int n;

cout << "n="; cin>>n;

//Заполнение массива

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

numbers[i] = n-i;

}

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

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

cout << numbers[i] << " ";

}

system("pause");

return 0;

}

Задача 2. Напишите программу, которая заполняет массив размера N числами Фибоначчи и выводит его. Число N вводится с клавиатуры.

#include <iostream>

using namespace std;

int main() {

int fib[100]; int n;

cout << "n="; cin>>n;

//Заполнение массива

fib[0]=0; fib[1]=1;

for (int i=2; i<n; i++) {

fib[i] = fib[i-1]+fib[i-2];

}

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

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

cout << fib[i] << " ";

}

system("pause");

return 0;

}

Задача 3. Напишите программу, которая принимает число N, заполняет массив размера N случайными числами и выводит его. Затем выведите элементы, принадлежащие [10, 20].

#include <iostream>

using namespace std;

int main() {

int nums[100]; int n;

cout << "n="; cin>>n;

//Заполнение массива

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

nums[i] = rand()%50;

}

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

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

cout << nums[i] << " ";

}

cout << endl;

//Вывод чисел, принадлежащих [10,20]

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

if (10<=nums[i] && nums[i]<=20) {

cout << nums[i] << " ";

}

}

cout << endl;

system("pause");

return 0;

}

Задача 4. Напишите программу, которая принимает число N, заполняет массив размера N случайными числами и выводит его на экран. Затем отсортируйте массив по убыванию и выведите его снова.

#include <iostream>

using namespace std;

int main() {

int nums[100]; int n;

cout << "n="; cin>>n;

//Заполнение массива

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

nums[i] = rand()%50;

}

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

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

cout << nums[i] << " ";

}

cout << endl;

//Сортировка

for (int i=0; i<n-1; i++) {

int j_min=i;

for (int j=i+1; j<n; j++) {

if (nums[j_min]>nums[j]) {

j_min=j;

}

}

//Меняем местами элементы с индексами j и j_min

int temp=nums[j_min];

nums[j_min]=nums[i];

nums[i]=temp;

}

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

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

cout << nums[i] << " ";

}

cout << endl;

system("pause");

return 0;

}

Задача 5. Напишите программу, которая принимает число N, заполняет массив размера N случайными числами и выводит его. Затем определите количество трехзначных чисел в нем.

#include <iostream>

using namespace std;

int main() {

int nums[100]; int n;

cout << "n="; cin>>n;

//Заполнение массива

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

nums[i] = rand()%3000;

}

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

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

cout << nums[i] << " ";

}

cout << endl;

//Подсчет числа трехзначных элементов

int kol=0;

for (int i=0; i<n-1; i++) {

if (100<=nums[i] && nums[i]<=999) {

kol++;

}

}

cout << kol << endl;

system("pause");

return 0;

}

ЗАДАЧИ

1. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N нулями. После заполнения выведите массив.

2. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N случайными числами. После заполнения выведите массив на экран.

3. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N так, чтобы элемент массива равнялся его индексу. Например, при N=5 массив должен иметь вид 0, 1, 2, 3, 4.

4. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N последовательными натуральными числами. Например, при вводе числа 5 массив должен иметь вид 1, 2, 3, 4, 5. После заполнения выведите массив на экран.

5. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N последовательными четными числами. Например, при вводе числа 5 программа должна заполнить массив следующим образом: 2, 4, 6, 8, 10. После заполнения выведите массив.

6. Напишите программу, которая заполняет массив размера N первыми степенями числа 2 и выводит его. Число N вводится с клавиатуры.

7. Напишите программу, которая заполняет массив размера N элементами арифметической прогрессии с параметрами x0=3 и d=3.4 и выводит его на экран. Число N вводится с клавиатуры.

8. Напишите программу, которая заполняет массив размера N элементами геометрической прогрессии с параметрами x0=2 и d=1.1 и выводит его на экран. Число N вводится с клавиатуры.

9. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N нулями. После заполнения выведите массив.

10. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N случайными числами. После заполнения выведите массив на экран.

11. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N так, чтобы элемент массива равнялся его индексу. Например, при N=5 массив должен иметь вид 0, 1, 2, 3, 4.

12. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N последовательными натуральными числами в обратном порядке. Например, при вводе числа 5 массив должен иметь вид 5, 4, 3, 2, 1. После заполнения выведите массив на экран.

13. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N последовательными натуральными числами. Например, при вводе числа 5 массив должен иметь вид 1, 2, 3, 4, 5. После заполнения выведите массив на экран.

14. Напишите программу, которая принимает с клавиатуры число N и заполняет массив размера N последовательными четными числами. Например, при вводе числа 5 программа должна заполнить массив следующим образом: 2, 4, 6, 8, 10. После заполнения выведите массив.

15. Напишите программу, которая заполняет массив размера N первыми степенями числа 3 и выводит его. Число N вводится с клавиатуры.

16. Напишите программу, которая заполняет массив размера N элементами арифметической прогрессии с параметрами x0=3 и d=3.4 и выводит его на экран. Число N вводится с клавиатуры.

17. Напишите программу, которая заполняет массив размера N элементами геометрической прогрессии с параметрами x0=2 и d=1.1 и выводит его на экран. Число N вводится с клавиатуры.

18. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем выведите элементы, принадлежащие отрезку [10,20].

19. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем выведите все двузначные числа этого массива.

20. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем выведите элементы, не принадлежащие отрезку [5,15].

21. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем выведите элементы, кратные 3 и не кратны 5.

22. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем вывести все трехзначные элементы этого массива.

23. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем вычислите сумму элементов, стоящих на четных позициях.

24. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем определите количество элементов, принадлежащих отрезку [10,20].

25. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его. Затем определите количество двузначных чисел в этом массиве.

26. Напишите программу, которая принимает число N, заполняет массив размера N случайными числами и выводит его на экран. Затем снова выведите массив, но на этот раз – в обратном порядке. Например, если исходный массив имеет вид 10, 6, 9, то обратный – 9, 6, 10.

27. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его на экран. Затем введите число и проверьте, есть ли оно в массиве или нет.

28. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его на экран. Затем введите число и определите, сколько раз оно встречается в массиве.

29. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его на экран. Затем отсортируйте массив по возрастанию и снова выведите на экран.

30. Напишите программу, которая принимает с клавиатуры число N, заполняет массив размера N случайными числами и выводит его на экран. Затем отсортируйте массив по убыванию и снова выведите на экран.


Сейчас читают про: