Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/89: Рейтинг темы: голосов - 89, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 10.04.2015
Сообщений: 9

Сформировать массив по заданному правилу

24.07.2015, 15:51. Показов 16243. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Напишите программу, которая создает двухмерный массив и заполняет его по следующему принципу: пользователь вводит число (например, 3) первый элемент массива принимает значение этого числа, последующий элемент массива принимает значение этого числа умноженного на 2 (т.е. 6 для нашего примера), третий элемент массива предыдущий элемент умноженный на 2 (т.е. 6*2=12 для нашего примера). Созданный массив вывести на экран.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.07.2015, 15:51
Ответы с готовыми решениями:

Сформировать массив по заданному правилу
Даны целые числа N (> 2), A и B. Сформировать и вывести целочисленный массив размера N, первый элемент которого равен A,...

Сформировать новый массив по заданному правилу
Сформировать массив J(10) из массива I(10) по следующему принципу: J(N)=I(N)+N.

Сформировать целочисленный массив по заданному правилу
даны целые числа n(>2), a и b. сформировать и вывести целочисленный массив размера N, первый элемент которого равен А, второй равен B, а...

8
0 / 0 / 0
Регистрация: 23.12.2013
Сообщений: 12
24.07.2015, 15:58
Я так понял, что нужно вывести всего 3 числа, потому что не сказано про размерность массива.
То есть:
C++
1
cout << n << " " << n * 2 << " " << n * 4;
0
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,244
24.07.2015, 15:58
Берем образец
Образцы (шаблоны) программ для типовых задач
И в нем меняем функцию Input
C++
1
2
3
4
5
6
7
8
// ввод массива
void Input(int* M,int n)
{
    cout<<"M[0]=?";
    cin >> M[0];
    for(int i=1;i<n;i++)
       M[i]=m[i-1]*2;
}
0
Эксперт по математике/физикеЭксперт С++
 Аватар для Ilot
2224 / 1426 / 420
Регистрация: 16.05.2013
Сообщений: 3,646
Записей в блоге: 6
24.07.2015, 16:00
C++
1
2
3
4
std::cin >> num;
*array = num;
for(int i = 1; i < N * N; ++i)
    *(array + i) = *(array + i - 1) * 2;
0
0 / 0 / 0
Регистрация: 10.04.2015
Сообщений: 9
24.07.2015, 16:25  [ТС]
Всем спасибки)) Я только учусь и весь день голову ломаю: "Как же сделать)))"

Добавлено через 18 минут
А если он двумерный, размер допустим Array [m][n]
0
 Аватар для Krasiosoft
52 / 52 / 23
Регистрация: 01.06.2015
Сообщений: 189
24.07.2015, 22:07
Если двумерный, тогда так:
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
#include <iostream>
#include <iomanip>
 
using namespace std;
 
int main()
{
    int num,rows,cols;
 
    cout <<"Number = ";
    cin >> num;
    cout <<"Rows = ";
    cin >> rows;
    cout <<"Cols = ";
    cin >> cols;
 
    int** matrix = new int*[rows];
    for (int i = 0; i < rows; i++){
 
        matrix[i]= new int[cols];
        for (int j = 0; j < cols; j++){
            matrix[i][j] = num;
            num*=2;
        }
    }
 
    cout << "Matrix: " << endl;
    for (int i = 0; i < rows; i++){
        for (int j = 0; j < cols; j++) cout << setw(7) << matrix[i][j] << ' ';
        cout << endl;
    }
 
    for(int i = 0; i < rows; i++){
        delete[] matrix[i];
    }
    delete[] matrix;
 
 
    return 0;
}
1
0 / 0 / 0
Регистрация: 10.04.2015
Сообщений: 9
24.07.2015, 23:07  [ТС]
За такую помощь Уважуха, спасибо!
0
 Аватар для matveev1512
53 / 43 / 22
Регистрация: 29.05.2016
Сообщений: 214
21.06.2016, 11:04
C++
1
2
3
4
5
6
7
8
for (int i = 0; i < n; i++){
    for (int j = 1; j < m; j++){
     mass[i][j] = mass[i][j-1] * 2;     
     cout << setw(4) << mass[i][j-1];
    }
    if (i<m-m) mass[i+1][m-3] = mass[i][m-1] * 2;
    cout << setw(4)<<mass[i][m-1]<< endl;
   }
Добавлено через 52 секунды
C++
1
2
3
4
5
6
7
8
9
for (int i = 1; i < n*m; i++){
    mass[0][i] = mass[0][i - 1] * 2;
   }
   for (int i = 0; i < n; i++){
    for (int j = 0; j < m; j++){
     cout << setw(4) << mass[i][j];
    }
    cout << endl;
   }
0
184 / 192 / 48
Регистрация: 25.08.2011
Сообщений: 792
21.06.2016, 11:19
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
using namespace std;
 
int main() {
    std::vector<int> vec(10);
    vec[0] = 1;
    std::generate(vec.begin() + 1, vec.end(), [&vec]()->int
    {
    static int pos = 1;
    auto val = vec[pos - 1] * 2;
    ++pos;
    return val;
    });
    std::copy(vec.begin(), vec.end(), ostream_iterator<int> (cout, " "));
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.06.2016, 11:19
Помогаю со студенческими работами здесь

Сформировать новый массив из исходного по заданному правилу
Задача из Златопольского: Из элементов массива p сформировать массив q того же размера по правилу: элементы с номером i от 3-го по 10-й...

Массив: Сформировать матрицу размера M × N по заданному правилу...
Даны целые положительные числа M, N, число Q и набор из N чисел. Сформировать матрицу размера M × N, у которой первая строка совпадает...

Сформировать вектор по заданному правилу
Даны натуральное число n и действительные числа y1 y2…yn. Получить вектор Z (Z1, Z2…Zn), Компонента Zi равняется: yi, если 0 &lt; yi...

Сформировать матрицу по заданному правилу
Данна целочисленная матрица размером 3 * 4. Написать программу, которая формирует двумерный массив по следующему правилу: элементы первой...

Сформировать последовательность по заданному правилу
Всем привет, еще раз! В общем стоит такая задача: Даны два положительных числа n и k. Надо вывести последовательность x1,x2,x3,...,xk...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru