+ Ответить в теме
Показано с 1 по 4 из 4

Тема: как вывести на экран всю строку в которой находится наибольшей элемент главной диогон

  1. #1
    dummy Кирилл1212 is on a distinguished road
    Регистрация
    11.11.2017
    Сообщений
    6
    Вес репутации
    0

    По умолчанию как вывести на экран всю строку в которой находится наибольшей элемент главной диогон

    Код :
    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. #include <time.h>   //для time(0)
    4.  
    5. #define ROWS 3
    6. #define COLS 3
    7.  
    8. int main()
    9. {
    10.     srand(time(0)); // для инициализации разных последовательностей псевдослучайных чисел
    11.     int i = 0;
    12.     int j = 0;
    13.     int min = 0;
    14.     int matrix[ROWS][COLS];
    15.  
    16.     for(i = 0; i < ROWS; ++i) {
    17.         for(j = 0; j < COLS; ++j)
    18.             matrix[i][j] = rand() % 100+10;//генерация чисел в диапазоне от 1 до 100
    19.     }
    20.  
    21.     min = matrix[0][0];  // поиск
    22.     for(i = 0; i < ROWS && i < COLS; ++i) { //минимального
    23.         if(min > matrix[i][i])  // числа по главное диогонали
    24.             min = matrix[i][i];
    25.     }
    26.  
    27.     for(i = 0; i < ROWS; ++i) { // выводд матрицы
    28.         for(j = 0; j < COLS; ++j)// заполнейно рандомными
    29.             printf("%.2d ", matrix[i][j]); // числами
    30.         printf("\n");
    31.     }
    32.  
    33.     printf("minimum on main diagonal is %d\n", min);
    34.     return 0;
    35. }

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #2
    Moderator Куратор
    system architect
    Romeo is on a distinguished road Аватар для Romeo
    Регистрация
    02.03.2004
    Адрес
    Крым, Севастополь
    Возраст
    36
    Сообщений
    3,089
    Вес репутации
    21

    По умолчанию Re: как вывести на экран всю строку в которой находится наибольшей элемент главной ди

    Ну, для начала найти индекс наибольшего элемента диагонали (сейчас там ищется минимальный элемент этой самой диагонали). А потом просто пробежать по строке с найденным индексом и вывести все элементы.
    Entites should not be multiplied beyond necessity @ William Occam
    ---
    Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
    ---
    Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.

  4. #3
    dummy Кирилл1212 is on a distinguished road
    Регистрация
    11.11.2017
    Сообщений
    6
    Вес репутации
    0

    По умолчанию Re: как вывести на экран всю строку в которой находится наибольшей элемент главной ди

    что то сделал выводи строку но не правильно

    Код :
    1. include <stdio.h>
    2. #include <stdlib.h>
    3. #include <time.h>   //для time(0)
    4.  
    5. #define ROWS 3
    6. #define COLS 3
    7.  
    8. int main()
    9. {
    10.     setlocale(0, "");
    11.     srand(time(0)); // для инициализации разных последовательностей псевдослучайных чисел
    12.     int i = 0;
    13.     int j = 0;
    14.     int min = 0;
    15.     int matrix[ROWS][COLS];
    16.  
    17.     for(i = 0; i < ROWS; ++i) {
    18.         for(j = 0; j < COLS; ++j)
    19.             matrix[i][j] = rand() % 100+10;//генерация чисел в диапазоне от 1 до 100
    20.     }
    21.  
    22.     min = matrix[0][0];  // поиск
    23.     for(i = 0; i < ROWS && i < COLS; ++i) { //минимального
    24.         if(min > matrix[i][i])  // числа по главное диогонали
    25.             min = matrix[i][i];
    26.     }
    27.     int minIndex = 0;  // поиск
    28.     for(i = 0; i < ROWS && i < COLS; i++) { //минимального
    29.         if(min > matrix[i][i] < matrix[minIndex][minIndex])  // числа на главной диагонали
    30.            minIndex =i;
    31.     }
    32.  
    33.  
    34.  
    35.  
    36.     for(i = 0; i < ROWS; ++i) { // выводд матрицы
    37.         for(j = 0; j < COLS; ++j)// заполнейно рандомными
    38.             printf("%.2d ", matrix[i][j]); // числами
    39.         printf("\n");
    40.     }
    41.  
    42.     printf("minimum on main diagonal is %d\n", min);
    43.  
    44.  
    45.     printf("Строка матрицы с минимальным элементом имеет индекс %.2d \n", minIndex);
    46.         printf("Содержимое строки матрицы: \n");
    47.         for(j = 0; j < COLS; j++)
    48.             printf("%.2d ", matrix[minIndex][j]); // числами
    49.         printf("\n");
    50.     return 0;
    51. }

  5. #4
    Moderator Куратор
    system architect
    Romeo is on a distinguished road Аватар для Romeo
    Регистрация
    02.03.2004
    Адрес
    Крым, Севастополь
    Возраст
    36
    Сообщений
    3,089
    Вес репутации
    21

    По умолчанию Re: как вывести на экран всю строку в которой находится наибольшей элемент главной ди

    Боже, что это?
    Код cpp:
    1. if(min > matrix[i][i] < matrix[minIndex][minIndex])  // числа на главной диагонали
    Результат операции > типа bool ты сравниваешь потом на меньше.

    Всё куда проще. Выкини вообще эти циклы и напиши заново. Индекс максимального элемента диагонали находится за один проход без всяких логических излишеств. И обрати внимание, по заданию он должен быть именно максимальным, а не минимальным.
    Entites should not be multiplied beyond necessity @ William Occam
    ---
    Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
    ---
    Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.

+ Ответить в теме

Похожие темы

  1. Вывести на экран цифру, наиболее часто встречающуюся в данном массиве
    Условие задачи: Дан массив, состоящий из символов. Вывести на экран цифру, наиболее часто встречающуюся в этом массиве. вот мой код: unit...
    от Andros_me в разделе Delphi и Pascal
  2. Вывести файл на экран и удалить пробелы
    Необходимо решить 2 задания помогите!! Помогите пожалуйста доделать задание!!!!!!!!! Необходимо: Создать файл file.txt с помощью текстового...
    от SvetaLee в разделе C и C++
  3. PHP вывести данные в строку
    Нужно вывести данные в строку для // show the data of one server и // show the data of two or more server. Слева координаты сервера, справа...
    от Shouldercannon в разделе Perl, PHP, ASP ...
  4. Вычеслить и вывести на экран в виде таблицы
    ПО C++ http://vkontakte.ru/photos.php?act=show&id=19852886_118796132 не понимаю что делать((((((((((
    от Ant1602 в разделе Решите мне задачку
  5. Как вывести на экран
    В задаче нужно вывести результат на экран: Заранее благодарен!!! --------------------------------------------------------------- masm model...
    от Anonymous в разделе Ассемблер

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения