Все обращения к массиву выполнить с помощью указателей - 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;
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы с потоками ввода-вывода и генерацией случайных чисел
  2. Объявление переменных: массив A типа int на 20 элементов, d и s типа int и инициализация их значений на 0
  3. Инициализация генератора случайных чисел с помощью функции srand(time(0))
  4. Вывод сообщения Massiv 20 chisel на экран
  5. Первый цикл for, который проходит по всем элементам массива A от 0 до 19 и присваивает каждому элементу случайное значение с помощью оператора *(A+i)=rand()%100-50
  6. Второй цикл for, который проходит по всем элементам массива A от 0 до 19 и проверяет, является ли значение элемента четным или нечетным, и увеличивает счетчик s или d соответственно
  7. Вывод на экран количества четных и нечетных чисел в массиве
  8. Завершение программы с помощью оператора return

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы