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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 32, средняя оценка - 4.72
trueherofromad
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 59
#1

Составить программу на языке Си,которая выводит элементы матрицы в заданном порядке - C++

12.12.2009, 22:29. Просмотров 4205. Ответов 35
Метки нет (Все метки)

[IMG]http://s59.***********/i166/0912/c1/560164df410b.jpg[/IMG]

Помогите пожалуйста составить алгоритм, а в идеале еще и закодить). У меня были идеи,но они какие-то слишком длинные,вообщем не получилось пока что.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2009, 22:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Составить программу на языке Си,которая выводит элементы матрицы в заданном порядке (C++):

Составить программу которая переворачивает список L, изменяет ссылки в этом списке так, чтобы его элементы оказались расположенными в обратном порядке - C++
Составить программу, которая переворачивает список L, т.е. изменяет ссылки в этом списке так, чтобы его элементы оказались расположенными в...

Напишите функцию, которая выводит элементы в следующем порядке: - C++
Дан массив A размера N. Напишите функцию, которая выводит его элементы в следующем порядке: AN, A0, AN-1, A1, AN-2, A2, … .

Напишите функцию, которая выводит его элементы в следующем порядке: - C++
15. Дан массив A размера N. Напишите функцию, которая выводит его элементы в следующем порядке: A1, AN, A2, AN–1, A3, AN–2, … .

Составить программу на языке С для вычисления значения функции y = f(x) при заданном значениях a, b ,c ,x. - C++
Составить программу на языке С для вычисления значения функции y = f(x) при заданном значениях a, b ,c ,x.

Разработайте программу, которая выполняет заданные действия и выводит результат в заданном формате - C++
1. Введите с клавиатуры переменные x,z (типа float), вычислите выражение res=(4.2*x-z)2/3.5 и выведите на экран результат с тремя цифрами...

Дан массив A размера N. Напишите функцию, которая выводит его элементы в следующем порядке: - C++
Дан массив A размера N. Напишите функцию, которая выводит его элементы в следующем порядке: AN-1,A0,AN-2,A1,AN-3,A2,... . #include...

35
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
12.12.2009, 22:31 #2
по диагонали наверно надос нижнего левого угла.
0
trueherofromad
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 59
12.12.2009, 22:37  [ТС] #3
ну ничего себе ответ) спасибо конечно,но то,что 2*2=4 я и так знаю)) Щас просто завис как-то, в голову не приходит ничего по данной задачке.
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
12.12.2009, 22:40 #4
trueherofromad, включаем логику, немного терпения и получаем простой код.

Не по теме:

Придерживайся правил общения, хамить не стоит...


C
1
2
3
4
5
int i,j,n, A[n][n];
.....
for(i=n-1;i>=0;i++)
  for(j=0;j<n-i;j++)
     printf("%d ",A[i][j])
1
trueherofromad
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 59
12.12.2009, 23:06  [ТС] #5
Ссори,вообще не понял,поясни плиз + это явно не на языке С,так как у тя присваивания стоят,это уже вообще не туда)
P.S. Я не хамил, а если кому-то показалось,что ответил грубо,извините...

Добавлено через 13 минут
КОРОЧ. ВОПРОС ПО ПРЕЖНЕМУ АКТУАЛЕН! Помогите кто-нибудь, плиз.

А то код manfeese, это вообще не то...
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
12.12.2009, 23:09 #6
Да, возможно! Сейчас посмотрю
0
M128K145
Эксперт С++
8293 / 3513 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
12.12.2009, 23:09 #7
trueherofromad, это чистейший С. А чем тебе присваивания не нравятся? Обычные два цикла, классические форы, только в третьей строке ошибка, там i--
0
trueherofromad
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 59
12.12.2009, 23:17  [ТС] #8
Я вас вообще не понимаю,наверное я туплю,но данный код я воспринима как полнейший абсурд!
Поробовал его выполнить,конечно же фигню выдает, + я сказал что это не С,т.к. в Си массивы так записываются A[i,j]
Вот пример кода,попробуйте его выполнить (все равно огромное спасибо за потраченное время):

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
int main () {
int a[3,3],n,i,j;
a[1,1]=1;
a[1,2]=2;
a[1,3]=3;
a[2,1]=4;
a[2,2]=5;
a[2,3]=6;
a[3,1]=7;
a[3,2]=8;
a[3,3]=9;
n=3;
for(i=n-1;i>=0;i--)
  for(j=0;j<n-i;j++)
     printf("%d ",a[i,j]);  
 return 0;
 }
P.S. Специально не заморачивался,чтобы исключить всякую вероятность моей ошибки,поэтому и написал быдлокод!
0
Gravity
563 / 557 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
12.12.2009, 23:23 #9
Цитата Сообщение от trueherofromad Посмотреть сообщение
я сказал что это не С,т.к. в Си массивы так записываются A[i,j]
В мемориз!))
0
trueherofromad
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 59
12.12.2009, 23:29  [ТС] #10
Ну так че,это я туплю или ваш код неправилен???? А то я пока что в сомнениях)
0
M128K145
Эксперт С++
8293 / 3513 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
12.12.2009, 23:37 #11
такая индексация, которую ты привел, есть только в C#, в С как и в С++ - [][]
0
trueherofromad
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 59
12.12.2009, 23:43  [ТС] #12
Ну это все неважно! Главное,что сам код абсурден,может вы мне с ним поможете,заранее спасибо)
+ написал тот же тест,только теперь в массиве все начинается с 0, а не 1,это была моя ошибка,лучше не стало))
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
int main () {
int a[2,2],n,i,j;
a[0,0]=1;
a[0,1]=2;
a[0,2]=3;
a[1,0]=4;
a[1,1]=5;
a[1,2]=6;
a[2,0]=7;
a[2,1]=8;
a[2,2]=9;
n=2;
for(i=n-1;i>=0;i--)
  for(j=0;j<n-i;j++)
     printf("%d ",a[i,j]);  
 return 0;
 }
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
12.12.2009, 23:43 #13
вот так попробуй!
C
1
2
3
4
5
6
7
for(i=n-1; i>=0; i--)
  for(j=0;j<n-i;j++)
    printf("%d ",A[i+j][j]);
 
for(i=1; i<n; i++)
  for(j=0;j<n-i;j++)
    printf("%d ",A[j][j+i]);
1
trueherofromad
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 59
12.12.2009, 23:47  [ТС] #14
Попробовал,вот код:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
int main () {
int a[2,2],n,i,j;
a[0,0]=1;
a[0,1]=2;
a[0,2]=3;
a[1,0]=4;
a[1,1]=5;
a[1,2]=6;
a[2,0]=7;
a[2,1]=8;
a[2,2]=9;
n=2;
for(i=n-1; i>=0; i--)
  for(j=0;j<n-i;j++)
        printf("%d ",a[i+j,j]);
 
for(i=1; i<n; i++)
  for(j=0;j<n-i;j++)
        printf("%d ",a[j,j+i]); 
 return 0;
 }
Выдает 7 7 8 7 8 9 8 9 9

P.S. Все равно буду продолжать ставить + за каждый пост)
0
M128K145
Эксперт С++
8293 / 3513 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
12.12.2009, 23:49 #15
Вот, все работает
C
1
2
3
4
5
6
7
8
const int n = 7;
int matr[n][n], i, j, k(1), z(0);
for(i = n - 1; i >= 0; --i, z ^= z)
    for(j = 0; j < n - i; ++j)
        matr[i + z++][j] = k++;
for(j = 1; j < n; ++j, z ^= z)
    for(i = 0; i < n - j; ++i)
        matr[i][j + z++] = k++;
1
12.12.2009, 23:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2009, 23:49
Привет! Вот еще темы с ответами:

Вывести все наддиагональные элементы матрицы в порядке, заданном диаграммой - C++
Помогите решить эту задачу. Дана матрица вещественных чисел x. Составить программу, которая выводит все наддиагональные элементы этой...

Напишите программу которая выводит 10 случайных чисел и распределяет их в порядке убывания. - C++
Напишите программу которая выводит 10 случайных чисел и распределяет их в порядке убывания.

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

Составить программу, которая выводит Х, умноженное на 2 - C++
Всем привет) Перешел с паскаля на С++ только... Нужно составить программу, которая выводит Х, умноженное на 2. Пример: Вводим Х...


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

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

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