Тема: Масиви
р
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C++ → Масиви
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Знайти максимальний елемент заданого масиву 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;
}Можете сказати як саме? Буду дуже вдячний.
Створюєте змінну
В циклі, де зберігаєте максимальне значення, також присвоюєте індекс в змінну, котру створили раніше
Вам в max треба зберігати не значення найбільшого елемента, а його індекс, і порівняння робити так
if (R[maxIndex] < R[a]) ...Початково можете встановити maxIndex в 0.
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися