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

Двумерный массивы. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ "Абстрактный" вопрос... http://www.cyberforum.ru/cpp-beginners/thread144766.html
Пипл объясните мне пожалуйста, если не трудно, зачем нужны абстрактные методы/классы??? Насколько я понял абстрактные классы это те куда входят абстрактные методы, а абстрактные методы это те которые имеют только имя и аргументы, но не имеют реализации. И только этим и отличаются от обычных методов/классов, но тогда какой в них смысл??? Пример с википедии: #include <iostream> class CA {...
C++ Сортировка списка Привет, всем.. Ребята помогите у подруги зачет по программированию ей надо решить задачку.. Информационное поле элемента сортированного списка-числовое. Найти максимальный элемент сортированного списка и поменять его местами с первым элементом сортированного списка.. Заранее спасибо.. Добавлено через 2 часа 14 минут Ребята помогите плизз.. Подругу выгонят.. а жалко.. http://www.cyberforum.ru/cpp-beginners/thread144747.html
C++ Найти такую прямую, по разные стороны от которой лежат по N/2 точек
Помогите написать программу: Матрица N*2 задаёт координаты N точек плоскости (N-чётное число). Найти такую прямую, по разные стороны от которой лежат по N/2 точек
C++ Запуск exe
Пользуюсь вижуалом, когда скомпилировал приложение .exe его могут запустить только те у кого есть компилятор, когда человек без компилятора запускает его, то ему выбивает ошибка бла бла бла неверные настройки, подскажите пожалуйста как это исправить???
C++ Конвертирование char в int http://www.cyberforum.ru/cpp-beginners/thread144709.html
Перевожу char в int, но на выходе неверное число, вот упрощений вариант: #include <iostream.h> main() { char c = '1'; int i = static_cast<int>(c); cout << i; }
C++ Конструктор копирования. Нужно для задачи дописать конструктор копирования. Вся задача в условии почти решена. Собственно вот условие и как она должна выглядеть: http://s49.***********/i124/1006/66/038c80bef977.jpg Я вроде все сделал, но хз правильно или нет. И почему-то у меня в консоле числа выводятся от 1 до 9 по порядку, а в условии от 1 до 27 и через 3. Помогите плз! # include <iostream> using namespace... подробнее

Показать сообщение отдельно
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4248 / 2780 / 219
Регистрация: 12.12.2009
Сообщений: 7,109
Записей в блоге: 1
Завершенные тесты: 1
13.06.2010, 18:20     Двумерный массивы.
Я ТАКООЕ написал, это называется г..нокод, я такое даже выкладывать не хочу. Сижу привожу в более менее нормальный вид. Можетпо-позже выложу)

Цитата Сообщение от Scythian Посмотреть сообщение
Kastaneda:
Я может что-то не понял, но у тебя в прототипе объявлен одномерный массив, а ты туда матрицу кидаешь. Может это??
Да там заморочки с указателем. Указатель на двумерный массив не может индексироваться (проверенно опытным путем)) как двумерный массив.

Добавлено через 1 час 0 минут
Вобщем не так красиво, как хотелось бы, но работает:
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
40
41
42
43
44
45
46
47
#include<iostream>
using namespace std;
bool bcount(int*,int);
void count0(int*,int);
int main () {
    int n;
    cout<<"Enter n : ";
    cin>>n;
    int qrt[50][50];  // не удается создать массив N*N
    cout<<"Enter matrix : "<<endl;
    for(int i=0;i<n;i++){
       for(int j=0;j<n;j++)
          cin>>qrt[i][j];
   }
   int count[n+1];
   count0(count,n+1);
   for(int i=0;i<n;i++){  // смотрим строки
      for(int j=0;j<n;j++)
          ++count[qrt[i][j]];
   if (!bcount(count,n+1)){
       cout<<"Matrix is not Latin square"<<endl;
       system ("pause");
       return 0;}
   count0(count,n+1);
   }
   for(int i=0;i<n;i++){  // смотрим столбцы
      for(int j=0;j<n;j++)
          ++count[qrt[j][i]];
         
   if (!bcount(count,n+1)){
       cout<<"Matrix is not Latin square"<<endl;
       system ("pause");
       return 0;}
   count0(count,n+1);
   }
   cout<<"Matrix is Latin square";
   cout<<endl;
   system ("pause");
   return 0;
} 
bool bcount(int *mas, int n) {
    for(int i=1;i<n;i++){
    if(mas[i]==0)return false;}
    return true; }  
void count0(int *mas, int n){
    for(int i=0;i<=n;i++)
       mas[i]=0;}
За то я понял, что не умею работать с двумерными массивами)

Добавлено через 1 минуту
да, еще я английским не в ладах, если что, фразы подправь)
 
Текущее время: 12:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru