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

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

Войти
Регистрация
Восстановить пароль
 
nikola_omsk
3 / 3 / 0
Регистрация: 27.05.2011
Сообщений: 73
#1

Заполнить массив змейкой справа налево - C++

15.11.2011, 14:38. Просмотров 985. Ответов 2
Метки нет (Все метки)

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 <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
#include <math.h>
#include <time.h>
 
  void main(){
 
 int i,j,k,N;
 int  a[8][8];
k=0;
N=8;
 for(i=0; i<N; i++)
 
k=1;
 
    for (i=0;i<N;i++)
      if (i%2==0 || i==0)
            for (j=0;j<N;j++)
                {
       a[i][j]=k;
    k++;
                }
    else
        for (j=N-1;j>=0;j--)
                {
      a[i][j]=k;
    k++;
                }
 
    for(i=0;i<N;i++)
        {
    for(j=0;j<N;j++)
 printf("%5d  ",a[i][j]);
        printf("\n");
        }
 
 }
как сделать так чтоб заполнялось по
4321
5678
12 11 10 9
и так далее..

Добавлено через 8 минут
решил..
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
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
#include <math.h>
#include <time.h>
 
  void main(){
 
 int i,j,k,N;
 int  a[8][8];
 
N=8;
 
 
 for(i=0; i<N; i++)
k=1;
 
    for (i=0;i<N;i++)
      if (i%2==0 || i==0)
           for (j=N-1;j>=0;j--)
 
                {
       a[i][j]=k;
    k++;
                }
    else
         for (j=0;j<N;j++)
                {
      a[i][j]=k;
    k++;
                }
 
    for(i=0;i<N;i++)
        {
    for(j=0;j<N;j++)
 printf("%5d  ",a[i][j]);
        printf("\n");
        }
 
 }
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2011, 14:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Заполнить массив змейкой справа налево (C++):

Двухмерный массив (заполнить змейкой квадратную матрицу) - C++
Требуется заполнить змейкой квадратную матрицу так, как показано на рисунке справа: заполнение происходит с единицы из левого верхнего угла...

Вывести элементы справа налево - C++
#include &lt;iostream.h&gt; void main() { int n, i; int a; cout&lt;&lt;&quot;Введите кол-во элементов N: &quot;; cin&gt;&gt;n; cout&lt;&lt;&quot;Введите ...

Вывод вектора (STL) справа налево - C++
Подскажите как вывести вектор начиная с его последнего элемента? for (vector&lt;char&gt;::iterator _pos = buffer.end() - 1; _pos &gt;=...

Натуральное число возрастает справа налево - C++
Дано следующее: Дано натуральное число. Верно ли, что его цифры следуют в порядке возрастания справа налево? - что я написал не так?...

Занести в матрицу данные справа налево - C++
необходимо создать двумерный динамический массив типа char и: занести в него данные сначала справа налево(имеется в виду 1-ая(0-ая)...

Отобразить матрицу зеркально справа налево - C++
Дана квадратная матрица натуральных чисел, (получаемая через rand()). Отобразить матрицу зеркально справа налево. Вывести на печать...

2
-=ЮрА=-
Заблокирован
Автор FAQ
15.11.2011, 14:49 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от nikola_omsk Посмотреть сообщение
как сделать так чтоб заполнялось по
Меняйте от строки к строке вывод в столбцы
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
#include <iostream>
#include <iomanip>
using namespace std;
 
 
int main()
{ 
    int i, j, m, n, k;
    cout<<"Enter Rows in matrix : ";cin>>m;
    cout<<"Enter Cols in matrix : ";cin>>n;
    int ** arr = new int * [m];
    for(k = 0, i = 0; i < m; i++)
    {
        arr[i] = new int[n];
        if(i % 2 == 0)
        {
            for(j = 0; j < n; j++)
                arr[i][j] = k++;
        }
        else
        {
            for(j = n - 1; 0 <= j; j--)
                arr[i][j] = k++;
        }
        for(j = 0; j < n; j++)
            cout<<setw(3)<<arr[i][j]<<" ";
        cout<<endl;
    }
    system("pause");
    return 0;
}
Enter Rows in matrix : 5
Enter Cols in matrix : 6
0 1 2 3 4 5
11 10 9 8 7 6
12 13 14 15 16 17
23 22 21 20 19 18
24 25 26 27 28 29
Для продолжения нажмите любую клавишу . . .
1
guest2015
0 / 0 / 0
Регистрация: 12.04.2015
Сообщений: 3
12.04.2015, 09:31 #3
-=ЮрА=-, здарова, какую роль играет переменная "K"?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.04.2015, 09:31
Привет! Вот еще темы с ответами:

Вывести на консоль квадратную матрицу, заполненную справа налево - C++
нужно вывести вот такой двумерный массив: 6 5 4 3 2 1 12 11 10 9 8 7 18 17 16 15 14 13 24 23 22 21 20 19 30 29 28 27 26 25 36...

Возрастают ли цифры в заданном числе справа налево (циклы) - C++
Дано число, цифры справо налево возрастают? написал вот такое только ответит всегда &quot;YES&quot;. while (n){ if (n % 10 &lt; n){ ...

Найти число полученное при чтение цифр справа налево - C++
Дано четырехзначное число. Найти число, полученное при чтение его цифр справа налево. Помогите с решением, пожалуйста )

Найти число, полученное при прочтении числа N справа налево - C++
Дано целое число N (&gt; 0). Используя операции деления нацело и взятия остатка от деления, найти число, полученное при прочтении числа N...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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