Все обращения к массиву выполнить с помощью указателей - C (СИ)
Формулировка задачи:
Есть две программы.Задание: все обращения к массиву выполнить с помощью указателей!
#include <iostream> #include <conio.h> #include <time.h> #include <clocale> const int n = 10; const int l = 6; void main () {setlocale(LC_ALL, "Russian"); int M[n][l]; int i,j; srand(time(0)); printf ("Массив целых чисел [10.6]:\n\n"); for( i=0; i<n; i++) {for( j=0; j<l; j++) {M[i][j]=-10+rand()%20; printf (" %d" ,M[i][j]);} printf("\n");} printf("\n"); printf("Все отрицательные элементы заменены на их абсолютные значения:\n\n"); for( i=0; i<n; i++) {for( j=0; j<l; j++) {if (M[i][j]<0) M[i][j]=abs(M[i][j]); printf(" %d" ,M[i][j]);} printf("\n");} getch();}
#include <stdio.h> #include <conio.h> #include <clocale> #include <cstdlib> #include <time.h> void main() {setlocale(LC_ALL, "Russian"); int A [20]; int s=0; int d=0; srand(time(0)); printf ("Массив из 20 случайных чисел:\n"); for (int i=0; i<20; i++) {A[i]=-50+rand()%100; printf ("%3d ", A[i]);} printf("\nКоличество четных чисел:\n"); for (int i=0; i<20; i++) if (A[i] & 1) d=d+1; else s=s+1; {printf("%3d",s);} printf("\nКоличество нечетных чисел:\n"); {printf("%3d",d);} getch();}
Решение задачи: «Все обращения к массиву выполнить с помощью указателей»
textual
Листинг программы
#include <iostream> #include <cstdlib> #include <time.h> using namespace std; int main(){ int A[20], d=0, s=0; srand(time(0)); cout<<"Massiv 20 chisel \n\n"; for(int i=0;i<20;i++){ *(A+i)=rand()%100-50; cout<<*(A+i)<<" "; } for(int i=0;i<20;i++){ if(*(A+i)%2==0)s++; else d++; } cout<<"\n\nChetnie "<<s<<"\n\nNechetnie "<<d<<endl; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с потоками ввода-вывода и генерацией случайных чисел
- Объявление переменных: массив A типа int на 20 элементов, d и s типа int и инициализация их значений на 0
- Инициализация генератора случайных чисел с помощью функции srand(time(0))
- Вывод сообщения
Massiv 20 chisel
на экран - Первый цикл for, который проходит по всем элементам массива A от 0 до 19 и присваивает каждому элементу случайное значение с помощью оператора *(A+i)=rand()%100-50
- Второй цикл for, который проходит по всем элементам массива A от 0 до 19 и проверяет, является ли значение элемента четным или нечетным, и увеличивает счетчик s или d соответственно
- Вывод на экран количества четных и нечетных чисел в массиве
- Завершение программы с помощью оператора return
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д