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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kbu
2 / 2 / 0
Регистрация: 30.07.2010
Сообщений: 76
#1

Проверьте пожалуйста код - C++

22.11.2010, 17:10. Просмотров 405. Ответов 6
Метки нет (Все метки)

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
36
37
38
39
#include <iostream>
#include<stdlib.h>              // в этом файле содержатся функции rand() и srand()
#include<time.h>                // в этом файле содержится функция time()
using namespace std;
class CMatrix{
    int a[4][4],num;                    //Создаем двухмерный массив
    public:                             //Делаем данные доступными
    CMatrix(){                           //Создаем конструктор без параметров,числа массивов заполняются случайно
   for(int i=0; i<4; i++){
        for(int j=0; j<4;j++){
            a[i][j]=rand()%90+10;
            cout<<a[i][j]<<" ";
        }
        cout<<"\n";
        }
}
    CMatrix(int temp){
       for(int i=0; i<4; i++){          // перебираем отдельные строки (одномерные массивы в совокупности)
        for(int j=0; j<4;j++) {          // перебираем отдельные элементы каждой строки
            a[i][j]=temp;               // инициализация элементов значениями
            cout<<a[i][j]<<" ";         // показ значений на экран
        }
        cout<<"\n";                     // переход на другую строку матрицы
        }
    }
void print(){
    for(int i=0; i<4; i++){             // перебираем отдельные строки (одномерные массивы в совокупности)
        for(int j=0; j<4;j++) {          // перебираем отдельные элементы каждой строки
            cout<<a[i][j]<<" ";         // показ значений на экран
        }
        cout<<"\n";                     // переход на другую строку матрицы
        }
}
};
int main(){
    CMatrix m;
    //CMatrix m(7);
    m.print();
}
есть ощущения что работает не совсем корректно,а именно в строке CMatrix m(я создаю переменную)а при выполнении программы мне уже печатает строки...когда я пытаюсь вызвать функцию CMatrix(); значения у меня задваиваются....что я не так написал?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2010, 17:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проверьте пожалуйста код (C++):

Написать код для игры НИМ. проверьте пожалуйста тот ли это код - C++
#include &lt;string&gt; using namespace std; int compChoose(int markers); int userChoose(int markers); int...

Проверьте пожалуйста код (C++) - C++
Вот я сам написал код(!)) Можете проверить: main() { printf(&quot;Content-type:text/html\n\n&quot;);

Проверьте пожалуйста код - C++
Программа должна проверить введенную строчку на соответствие слову как паролю.Условия Не меньше 8 символов, содержание латинских букв и...

Проверьте код пожалуйста - C++
В чем ошибка? Если он в ответе выдает только: Vvedite element massiva: A= #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include...

Проверьте код пожалуйста - C++
Цель работы Создать программу, которая вычисляет значения функции заданного диапазона; необходимо организовать ввод границ интервала,...

Проверьте код пожалуйста на цикл в С++ - C++
Почему он не выдает мне полную сумму? Где здесь не правильно написано #include &quot;stdafx.h&quot; #include &lt;math.h&gt; #include &lt;conio.h&gt; int...

6
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,278
Завершенные тесты: 1
22.11.2010, 17:23 #2
я не понял что делает твой код.Но.
когда я снял комментария с этой строки "//CMatrix m(7);" и сделал дебаг появилась ошибка.Тогда я удалил " CMatrix m;" и на экране увидел семерки.

Добавлено через 2 минуты
а если без инициализации конструктором,то выводятся цифры,которые входят в 90+10 как и ты указал.
0
kbu
2 / 2 / 0
Регистрация: 30.07.2010
Сообщений: 76
22.11.2010, 17:32  [ТС] #3
По идее при строке CMatrix m - должна же создавать только переменная типа CMatrix , уже при вызове CMatrix(); - должны печататься рендомные числа,а при вызове CMatrix(7) вместо рендомных чисел должны печататься только 7....а рендомные числа уже печатаются при строке CMatrix m.....так же не должно быть
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,278
Завершенные тесты: 1
22.11.2010, 17:40 #4
Я не понимаю..
у меня при CMatrix (7) печаются семерки..
при CMatrix m -ранд
0
kbu
2 / 2 / 0
Регистрация: 30.07.2010
Сообщений: 76
22.11.2010, 17:48  [ТС] #5
все верно,а разве должен печататься ранд при CMatrix m?
он же должен печататься при CMatrix();
или нет??
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,278
Завершенные тесты: 1
22.11.2010, 17:52 #6
функция
Цитата Сообщение от kbu Посмотреть сообщение
CMatrix
перегружена 2 раза.
1.Если не задается параметр(не инициализуется)-берется ранд
2.Или же,если есть начальное число.

Вы же сам код писали

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  CMatrix(){                           //ПЕРВЫЙ СЛУЧАЙ-С РАНДОМ
   for(int i=0; i<4; i++){
                for(int j=0; j<4;j++){
                        a[i][j]=rand()%90+10;
                        cout<<a[i][j]<<" ";
                }
                cout<<"\n";
        }
}
    CMatrix(int temp){
       for(int i=0; i<4; i++){          // ВТОРОЙ СЛУЧАЙ-КОНСТРУКТОР ИНИЦИАЛИЗАЦИИ
                for(int j=0; j<4;j++) {          // перебираем отдельные элементы каждой строки
                        a[i][j]=temp;               // инициализация элементов значениями
                        cout<<a[i][j]<<" ";         // показ значений на экран
                }
                cout<<"\n";                     // переход на другую строку матрицы
        }
    }
0
kbu
2 / 2 / 0
Регистрация: 30.07.2010
Сообщений: 76
22.11.2010, 18:06  [ТС] #7
уже со всем разобрался!!)Спасибо за помощь)
Я просто забыл,что конструктор вызывается автоматом...
теперь все стало на свои места!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2010, 18:06
Привет! Вот еще темы с ответами:

Проверьте пожалуйста код на ошибку - C++
Всем привет , программа при вводе сравнивает является ли слово Палиндромом или нет. Проблема 1)Если я введу например aabcaa то...

Строки. Проверьте код, пожалуйста. - C++
Здравствуйте! Проверьте пожалуйста код, а то у меня не выполняется пункт &quot;Б&quot;. Вот условие задачи - Задан текст, состоящий из строк...

Проверьте пожалуйста код на правильность ! - C++
2. Даны два вектора и найти угол между ними и модуль векторного произведения векторов X и Y. При вычислении использовать...

Проверьте пожалуйста код на правильность ! ! ! - C++
2. Дан массив размера 5 x 6 с элементами целого типа. Написать программу для вычисления числа элементов массива кратных 3. За ранее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
22.11.2010, 18:06
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru