1

Тема: Масиви

р

2

Re: Масиви

га?

3

Re: Масиви

P[10]
:D
Хто наступний?

4

Re: Масиви

Знайти максимальний елемент заданого масиву R(9) і поміняти його місцями
з останнім елементом. Вивести максимальний елемент, початковий та перетворений масиви.

Майже все зробив, але воно міняє тільки останній елемент максимальним, а максимальний елемент на останній не міняє.
Допоможіть будь-ласка

{
    int R[9];
    int a, max, x;
    
    for(a = 0; a < 9; a++)
    {
        printf("R[%d]=", a);
        scanf("%d", &R[a]);
    }
    for(a = 0; a < 9; a++)
        printf("%d", R[a]);
    
    max = R[0];
    
    for(a = 0; a < 9; a++)
        if(max < R[a])
        {
            max = R[a];
        }
    printf("\n max element= %d ", max);
    printf("\n ostaniy element= %d", R[8]);
    
    x = R[8];
    R[8] = max;
    max = x;
    for(a = 0; a < 9; a++)
        printf("\n noviy massuv= %d", R[a]);
    return 0;
}

5

Re: Масиви

то вам треба разом з максимальним елементом окремо зберігати індекс того максимального елемента, в вашому випадку цей індекс зветься a

Подякували: koala, Nezox7712

6

Re: Масиви

Можете сказати як саме? Буду дуже вдячний.

Подякували: koala1

7

Re: Масиви

Nezox771 написав:

Можете сказати як саме? Буду дуже вдячний.

  1. Створюєте змінну

  2. В циклі, де зберігаєте максимальне значення, також присвоюєте індекс в змінну, котру створили раніше

Подякували: Nezox7711

8

Re: Масиви

Вам в max треба зберігати не значення найбільшого елемента, а його індекс, і порівняння робити так

if (R[maxIndex] < R[a]) ...

Початково можете встановити maxIndex в 0.

Подякували: Nezox7711