Ангелина75645674
15.01.2021 23:43

Напишите программу. Массив состоит из 6 элементов. Его необходимо заполнить числами = индекс массива + день вашего рождения. Вывести элементы массива по образцу "Элемент массива 1 = 23"

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Алла1666666
11.02.2022 23:32
Возможно, не самое эффективное решение
#include <iostream>
#include <cstdlib>
#include <ctime>
int main()
{
    using namespace std;
    const int N = 10;
    int A[N];
    srand(time(0));
    for (int i = 0; i < N; ++i)
        A[i] = rand() % 201 - 100;
   
    //Вывод исходного массива на экран
    for (int i = 0; i < N; ++i)
        cout << A[i] << "  ";
    cout << endl;

    //Подсчитаем количества положительных и отрицательных
    int kpos = 0, kneg = 0;
    for (int i = 0; i < N; i++)
        if (A[i] > 0)
            ++kpos;
        else
            ++kneg;

    int * Apos = new int[kpos];
    int * Aneg = new int[kneg];
    int pos = 0, neg = 0;
    for (int i = 0; i < N; ++i)
        if (A[i] > 0)
            Apos[pos++] = A[i];
        else
            Aneg[neg++] = A[i];

    for (int i = 0; i < N; ++i)
        if (i < kpos)
            A[i] = Apos[i];
        else
            A[i] = Aneg[i - kpos];

    delete[] Apos;
    delete[] Aneg;

    //Вывод полученного массива на экран
    for (int i = 0; i < N; ++i)
        cout << A[i] << "  ";
    cout << endl;
    return 0;
}
0,0(0 оценок)
Ответ:
kazakstanarmy
30.06.2022 23:04
Версия языка: PascalABC.Net 3.2, сборка 1437 от 03.05.2017

1. Сохраняем текст модуля в файле garnaga.pas и выполняем компиляцию (Ctrl+F9)

unit garnaga;

interface

type Mass2d=array [,] of integer;

function GetMass(rand:boolean:=true):Mass2d;

function SumDiag(a:Mass2d):integer;

implementation

function GetMass(rand:boolean):Mass2d;
begin
  var n:=ReadInteger('Количество строк/столбцов в массиве:');
  if rand=true then begin
    var a:=ReadInteger('Минимальное значение для заполнения:');
    var b:=ReadInteger('Максимальное значение для заполнения:');
    Result:=MatrRandom(n,n,a,b)
    end
  else begin
    Writeln('Вводите элементы массива:');
    Result:=ReadMatrInteger(n,n)
    end
end;

function SumDiag(a:Mass2d):integer;
begin
  Result:=0;
  var n:=a.RowCount-1;
  for var i:=0 to n do Result+=a[i,i]+a[i,n-i];
  if n.IsEven then begin
    n:=n div 2;
    Result-=a[n,n]
    end
end;

end.

2. Создаем новый файл и помещаем в него программу, использующую созданный модуль

uses garnaga;

begin
  var a:=GetMass; a.Println; Writeln;
  var b:=GetMass; b.Println; Writeln;
  var c:=GetMass(false); Writeln;
  Writeln('Sдиаг=',SumDiag(a)+SumDiag(b)+SumDiag(c))
end.

3. Запускаем программу на выполнение.

Пример работы:
Количество строк/столбцов в массиве: 4
Минимальное значение для заполнения: -20
Максимальное значение для заполнения: 35
   4 -14 -14  26
  26  -6  12  22
  13  10 -20  26
  -3  22  14  -4

Количество строк/столбцов в массиве: 5
Минимальное значение для заполнения: 0
Максимальное значение для заполнения: 50
  13  48   5  12   2
  43  31  45  35  23
  36  30   6  47  42
  11   8  29  36  39
  11  33  14  48  29

Количество строк/столбцов в массиве: 3
Вводите элементы массива:
1 6 2
8 3 4
7 0 5

Sдиаг=208
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота