С Новым годом! Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
16 / 16 / 1
Регистрация: 03.05.2010
Сообщений: 158
1

При определенном условии сгенерировать массив

08.10.2010, 15:04. Показов 1278. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно при определенном условии сгенерировать массив, если написать это условие:
C
1
2
3
4
int i,j;
for(i=0; i<n; i++)
 for(j=0; j<n; j++)
  x[i][j]=(j<n-i-1) ? 0:j+1;
то получается такой массив:
0 0 0 4
0 0 3 4
0 2 3 4
1 2 3 4.
Как подправить условие, чтобы вывело такой массив:
0 0 0 1
0 0 1 2
0 1 2 3
1 2 3 4.
То есть массив должен и дальше продолжаться при разной размерности

Добавлено через 2 минуты
C
1
x[i][j]=(j<n-i-1) ? 0:j+1;
- если в этой строчке изменить условие на
C
1
x[i][j]=(j<n-i-1) ? 0:j+i-2;
то он выведет правильный массив при размерности 4, но при больших размерностях уже будет не правильный
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.10.2010, 15:04
Ответы с готовыми решениями:

Окно сообщения при определенном условии
Всем привет. Есть кнопка по нажатию которой заполняется поле. Нужно, чтобы при определенном...

Вывод значения при определенном условии
Помогите, пожалуйста:В ячейки A3 и B3 помещены два числа. Если они оба четны, то в ячейку С3...

Повтор цикла при определенном условии
Как такое сделать? IF True Then Все_сначала

Сложение ячеек при определенном условии
Добрый день. я знаю как складываются ячейки =ячейка1 &amp; &quot;,&quot; &amp; ячейка2 &amp; &quot;,&quot; &amp; ячейка3 &amp; &quot;,&quot;...

6
72 / 71 / 8
Регистрация: 04.08.2010
Сообщений: 434
08.10.2010, 15:17 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Лови
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
    const int n=10;
    int a[n][n];
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            if(j<n-i-1)a[i][j]=0;
            else a[i][j]=j-(n-i)+2;
            cout << a[i][j] << "  ";
        }
        cout << endl;
    }
    return 0;
}
1
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 2
08.10.2010, 15:36 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

А я бы вот так сделал:
C
1
2
3
4
5
6
7
8
    for(i = 0; i < SIZE; ++i)
        for(j = 0; j < SIZE; ++j)
            data[i][j] = 0;
    
    for(i = 0; i < SIZE; ++i) {
        for(j = i; j < SIZE; ++j)
            data[SIZE - i - 1][j] = j - i + 1;
    }
0
16 / 16 / 1
Регистрация: 03.05.2010
Сообщений: 158
08.10.2010, 15:39  [ТС] 4
LineStown, спасибо...
видел, что от размерности n зависит, но не мог додуматься куда её впихнуть))

Добавлено через 1 минуту
fasked, и работает?
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 2
08.10.2010, 15:44 5
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Driver_09, а Вы мне не верите или проверить лень?
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
f#include <stdio.h>
 
#define SIZE 5
 
int main()
{
    int i = 0;
    int j = 0;
    int data[SIZE][SIZE];
    
    for(i = 0; i < SIZE; ++i)
        for(j = 0; j < SIZE; ++j)
            data[i][j] = 0;
    
    for(i = 0; i < SIZE; ++i) {
        for(j = i; j < SIZE; ++j)
            data[SIZE - i - 1][j] = j - i + 1;
    }
    
    for(i = 0; i < SIZE; ++i) {
        for(j = 0; j < SIZE; ++j) {
            printf("%d ", data[i][j]);
        }
        
        printf("\n");
    }
}
Код
fasked@linux-vhgb:~/Проекты/forum> ./a.out
0 0 0 0 1 
0 0 0 1 2 
0 0 1 2 3 
0 1 2 3 4 
1 2 3 4 5
1
16 / 16 / 1
Регистрация: 03.05.2010
Сообщений: 158
08.10.2010, 16:07  [ТС] 6
fasked, почему, проверить не лень)))
спасибо.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12832 / 7569 / 1764
Регистрация: 25.07.2009
Сообщений: 13,965
08.10.2010, 16:49 7
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main(void){
    int i, j, size;
 
    printf("Size: ");
    scanf("%d", &size);
    printf("\n");
    for ( i = 0; i < size; ++i )
        for ( j = 0; j < size; ++j )
            printf("%d%c", ( i + j + 2 - size < 0 ) ? 0 : i + j + 2 - size, ( j < size - 1 ) ? ' ' : '\n');
    return 0;
}
Хари-Кришна!

Добавлено через 4 минуты
Цитата Сообщение от fasked Посмотреть сообщение
C
1
2
3
4
5
6
7
...
    int data[SIZE][SIZE];
    
    for(i = 0; i < SIZE; ++i)
        for(j = 0; j < SIZE; ++j)
            data[i][j] = 0;
...
Оно же
C
1
int data[SIZE][SIZE] = { 0 };
1
08.10.2010, 16:49
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.10.2010, 16:49
Помогаю со студенческими работами здесь

Смена обоев при определенном условии
Возможно ли программно организовать смену обоев рабочего стола? Есть ли для этого какие-то функции?

Запуск программы при определенном условии
Доброго времени суток! Можно проверить наличие определенного файла if not exist file.exe goto...

Отобразить button при определенном условии
По умолчанию button1 скрыт в свойствах. Есть splitContainer у которого splitContainer.panel1 по...

Отыскание корня при определенном условии
Здравствуйте. Подскажите пожалуйста как можно реализовать следующую операцию: необходимо...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS, Swagger и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru