Форум программистов, компьютерный форум CyberForum.ru

Матрица и ее диагональ - C++

Восстановить пароль Регистрация
 
xod
156 / 46 / 17
Регистрация: 01.07.2014
Сообщений: 185
11.07.2014, 15:24     Матрица и ее диагональ #1
дана квадратная матрица размером 7*7
она заполняется рандомными целыми числами, а
также выводится на экран. Вопрос 1: я хотел при
выводе матрицы использовать строку cout.width(4);
Но она не прошла. Компилятор что-то говорил не по-русски ...
Далее.
Эта матрица преобразуется по следующему алгоритму:
В главной диагонали берётся верхний элемент.
Он сравнивается со всеми элементами матрицы (кроме себя),
в случае равенства, тот элемент заменяется на 0. И так,
по-очереди поступают все элементы диагонали. Результат
выводится на экран.
Вопрос 2: как в программе использовать goto??
Компилятор что-то его не любит ...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <iomanip>
#include <time.h>
using namespace std;
 
int main()
{
    srand(time(NULL));
    int mas[7][7];
    int i, j, k, l;
    for (i = 0; i < 7; i++)
        for (j = 0; j < 7; j++)
            mas[i][j] = rand()% 20;
 
    for (i = 0; i < 7; i++){
        for (j = 0; j < 7; j++)
            cout << setw(4) << mas [i][j] ;
            cout << "\n";}
 
    for (k = 0; k < 7; k++)
        for (i = 0; i < 7; i++)
            for (j = 0; j < 7; j++){
                l=mas[k][k];
                if((l == mas[i][j]) && (i != j)) mas[i][j] = 0;}
    cout << endl;
 
    for (i = 0; i < 7; i++){
        for (j = 0; j < 7; j++)
            cout << setw(4) << mas [i][j] ;
            cout << "\n";}
    system("Pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2014, 15:24     Матрица и ее диагональ
Посмотрите здесь:

Матрица (побочная диагональ) C++
C++ Главная диагональ матрицы
Главное диагональ массива C++
C++ Главная диагональ матрицы
Побочная диагональ матрицы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5437 / 2561 / 233
Регистрация: 01.11.2011
Сообщений: 6,330
Завершенные тесты: 1
11.07.2014, 15:29     Матрица и ее диагональ #2
Цитата Сообщение от xod Посмотреть сообщение
И так, по-очереди поступают все элементы диагонали
Итерации бессмысленны. Первое значение еще ладно. а остальные уже будут не равны первому зануленному, если они конечно сами не нули, что так же тавтология.

Цитата Сообщение от xod Посмотреть сообщение
Но она не прошла. Компилятор что-то говорил не по-русски ...
Приведите текст ошибок.

Цитата Сообщение от xod Посмотреть сообщение
Вопрос 2
Пункт 5.16 Правил: Одна тема - один вопрос.
Если вы конечно не хотите применить goto конкретно к этому коду.
xod
156 / 46 / 17
Регистрация: 01.07.2014
Сообщений: 185
11.07.2014, 15:48  [ТС]     Матрица и ее диагональ #3
Мне кажется, что вы не правы. Диагональ матрицы защищена от
изменений. Хорошо, оператор goto подождет. Однако в этой теме
я хотел применить ещё один способ вывода матрицы, но не нашёл
ответа. Определённо вы знаете как вывести символ (число) в любое
место экрана. Или это невозможно?? Даже в бейсике есть такой
оператор Locate. Я только начал изучать язык Си++ . Для меня
матрицы - это плацдарм на котором я освою Си++. Не хочу писать
простые программы типа "привет вселенная". Помогите мне сделать
первый шаг. И я далеко пойду ....
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5437 / 2561 / 233
Регистрация: 01.11.2011
Сообщений: 6,330
Завершенные тесты: 1
11.07.2014, 15:52     Матрица и ее диагональ #4
Цитата Сообщение от xod Посмотреть сообщение
Определённо вы знаете как вывести символ (число) в любое
место экрана. Или это невозможно?
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Пункт 5.16 Правил: Одна тема - один вопрос.
Цитата Сообщение от xod Посмотреть сообщение
Мне кажется, что вы не правы. Диагональ матрицы защищена от изменений.
Цитата Сообщение от xod Посмотреть сообщение
Эта матрица преобразуется по следующему алгоритму:
В главной диагонали берётся верхний элемент. Он сравнивается со всеми элементами матрицы (кроме себя), в случае равенства, тот элемент заменяется на 0
___
xod
156 / 46 / 17
Регистрация: 01.07.2014
Сообщений: 185
11.07.2014, 16:00  [ТС]     Матрица и ее диагональ #5
Приношу свои извинения. Но это опечатка.
Обнуляется не диагональный элемент (надо так оговориться!)
Спасибо вам!
Yandex
Объявления
11.07.2014, 16:00     Матрица и ее диагональ
Ответ Создать тему
Опции темы

Текущее время: 09:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru