Составить программу на C++ (желательно с объяснениями, что и как)
Посчитайте количество элементов одномерного массива, которые совпадают со своим номером и при этом кратные 3.
Репорт, кстати, кинул не я, а скорее всего автор вопроса.
Ответы
Ответ:
Все расписал в объяснении писал прогу в DevC++.
Объяснение:
//Пишу на DevC++
#include <stdio.h>//ввод и вывод
#include <stdlib.h>//Не помню прочитаешь
#include <math.h>//Математические действия на всякий случай подключил
#include <locale.h>//Библиотечка для подключения русского
#include <time.h>//Лаборатория со временем подключаю чтобы настроить рандом
int main(){ //Объявление самой программы
setlocale(LC_ALL, "rus"); //Подключение русского языка(чтобы при выводе на экран русский выводил)
int s, i, N = 1000, count = 0; //Объявление переменных
int A[N], B[N]; //Объявление массивов
system("color 2"); //Ставим себе цвет текста
printf("Весь массив: \n\n"); //Выводим на экран текст
for(i=1; i<1000;i++){ //Цикл for(начальное значение; конечное значение; шаг(на сколько идет увеличение или уменьшение)
A[i] = rand()%1000; //Цикл в котором i-ому элементу массива присваивается рандомное число от 0 до 1000
} //Закрытая скобка закрытие цикла
for(i=1; i<1000;i++){ //Снова цикл for
printf("%d\t", A[i]); //Вывод на экран поочередно элементы массива
} //Закрытая скобка
printf("\n\nМассив в котором элемент совпадает со своим номером:\n");//Вывод текста
for(i=1; i<1000;i++){ //Цикл for
if(i==A[i]){ //Цикл if равнение в скобках равно ли i и элемент массива A[i]
if(A[i] % 3 == 0){ //Если остаток от деления числа массива с номером i на 3 равно 0 (деление без остатка) то идем в цикл
printf("%d\t", A[i]); //Выводим на экран все числа массива удовлетворяющие условию
count+=1; //счетчик
} //Закрыто
} //Закрыто
} //Закрыто
if(count == 0) printf("\nТаких элементов нет\n"); //Если счетчик равен нулю выводим строку
printf("\nКоличество элементов которые совпадают со своим номером: %d\n", count);//выводим строку и вписываем в конце число счетчика
} //Закрыто
И объединить это в один if с помощью &&
Если нужно не настолько подробно - можно найти видео покороче либо поискать в интернете основы программирования с примерами.
Лично я уже знал Processing, Python и немного Arduino, когда начал учить C++, поэтому мне было нетрудно.
using namespace std;
#include <iostream>
#include <clocale>
#include <cstdlib>
#include <iomanip>
#include <string>
#include <ctime>
int main() {
setlocale(LC_ALL, "rus");
system("chcp 1251");
srand(time(0));
const int arraysize = 50;
int array[arraysize];
int count = 0;
for (int i = 0; i < arraysize; i++) {
array[i] = rand() % 50;
if (i % 3 == 0 && array[i] == i) count++;
cout << array[i] << " ";
}
cout << endl << endl << "Количество чисел, совпадающих со своим номером и кратных трем: " << count << endl;
system("pause");
return 0;
}