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

Задачи на массивы - C++

Восстановить пароль Регистрация
 
Elysi
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 19
02.12.2013, 09:48     Задачи на массивы #1
Здравствуйте, многоуважаемые пользователи! Прошу Вас помощи в начинающих заданиях. Не знаю сюда ли пишу.

1. Дан N-элементный одномерный массив M. В данном массиве необходимо в качестве значения последнего элемента записать произведение всех элементов массива, стоящих на нечетных местах.

Форумчане, помогите пожалуйста, остался последний экзамен.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2013, 09:48     Задачи на массивы
Посмотрите здесь:

Массивы. Одномерные массивы.(2 задачи) C++
C++ задачи на C++, на массивы
Массивы - задачи C++
Задачи на массивы C++
Массивы(задачи) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Elysi
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 19
02.12.2013, 10:04  [ТС]     Задачи на массивы #2
Я думаю, добрые люди еще не перевелись...
zss
Модератор
Эксперт С++
 Аватар для zss
5947 / 5552 / 1784
Регистрация: 18.12.2011
Сообщений: 14,184
Завершенные тесты: 1
02.12.2013, 10:10     Задачи на массивы #3
Цитата Сообщение от Elysi Посмотреть сообщение
Я думаю, добрые люди еще не перевелись...
Такая доброта Вам не на пользу.
Чтобы научиться программировать, надо пытаться хоть что-то делать самому.
А если хотите только получить зачет, тогда отправляйтесь в раздел фриланса.
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
02.12.2013, 10:11     Задачи на массивы #4
1. Дан N-элементный одномерный массив M. В данном массиве необходимо в качестве значения последнего элемента записать произведение всех элементов массива, стоящих на нечетных местах:

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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
#define N 20
 
int main(int argc, char* argv[])
{
    int A[N] = { 0 };
 
    for (int z = 0; z < N; z++)
    {
        A[z] = rand() % 9 + 1;
        printf("%d ",A[z]);
    }
 
    printf("\n");
 
    int mul = 1, i = 1; 
    while (i < N) { mul*=A[i]; i+=2; }
 
    A[N-1] = mul;
 
    for (int z1 = 0; z1 < N; z1++)
        printf("%d ",A[z1]);
 
    printf("\n");
 
    _getch();
 
    return 0;
}
http://codepad.org/xl0Aiq5L
Миниатюры
Задачи на массивы  
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
02.12.2013, 10:16     Задачи на массивы #5
2. Дан двумерный массив NxN. Поменять местами последнюю строку и последний столбец:
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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <memory.h>
 
#define N 20
 
void swap(int& n1, int& n2)
 { int _tn = n1; n1 = n2; n2 = _tn; }
 
int main(int argc, char* argv[])
{
    int** A = new int*[N];
    memset((void*)A, 0x00, 4 * N);
 
    for (int z1 = 0; z1 < N; z1++)
    {
        A[z1] = new int[N];
        for (int z2 = 0; z2 < N; z2++)
        {
            A[z1][z2] = rand() % 9 + 1;
            printf("%d ",A[z1][z2]);
        }
 
        printf("\n");
    }
 
    printf("\n");
 
    for (int i = 0; i < N; i++)
        swap(A[N-1][i],A[i][N-1]);
 
    for (int z3 = 0; z3 < N; z3++)
    {
        for (int z4 = 0; z4 < N; z4++)
            printf("%d ",A[z3][z4]);
 
        printf("\n");
    }
 
    _getch();
 
    return 0;
}
http://codepad.org/zYPjjyA4
Миниатюры
Задачи на массивы  
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
02.12.2013, 10:20     Задачи на массивы #6
3. Дан двумерный массив NxN. Поменять местами K-ую строку и K-ый столбец. K вводится с клавиатуры:
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
48
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <memory.h>
 
#define N 20
 
void swap(int& n1, int& n2)
 { int _tn = n1; n1 = n2; n2 = _tn; }
 
int main(int argc, char* argv[])
{
    int** A = new int*[N];
    memset((void*)A, 0x00, 4 * N);
 
    for (int z1 = 0; z1 < N; z1++)
    {
        A[z1] = new int[N];
        for (int z2 = 0; z2 < N; z2++)
        {
            A[z1][z2] = rand() % 9 + 1;
            printf("%d ",A[z1][z2]);
        }
 
        printf("\n");
    }
 
    printf("\n");
 
    printf("Vvedite nomer stroki i stolbtsa:");
 
    int K = 0; scanf("%d",&K);
 
    for (int i = 0; i < N; i++)
        swap(A[K][i],A[i][K]);
 
    for (int z3 = 0; z3 < N; z3++)
    {
        for (int z4 = 0; z4 < N; z4++)
            printf("%d ",A[z3][z4]);
 
        printf("\n");
    }
 
    _getch();
 
    return 0;
}
Миниатюры
Задачи на массивы  
Elysi
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 19
02.12.2013, 10:29  [ТС]     Задачи на массивы #7
zitxbit, огромное Вам спасибо за понимание и проделанную работу. Простите пожалуйста, что отнял у Вас время.
Искренне желаю Вам всего самого доброго и хорошего.
Лично обещаю, что буду саморазвиваться в сфере программирования.
vGolde
-116 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 23
02.12.2013, 10:31     Задачи на массивы #8
В 3 по аналогии, только вместо n(22 - 24 строчки) ставим k, которую вводим с клавиатуры.

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
#include <iostream>
#include <time.h>
#include <stdlib.h>
 
const int n = 5;
 
int mas[n][n], temp;
 
int main()  
{
   srand(time(NULL));
    for(int i(0); i < n; i++)
    {
        for(int j(0); j < n; j++)
            mas[i][j] = rand()%10;
                cout << mas[i][j] << '\t';
            cout << endl;
    }
    
    for(int i(0); i < n; i++)
    {
        temp = mas[n][i];
        mas[n][i] = mas[i][n];
        mas[i][n] = temp;
    }
    
    for(int i(0); i < n; i++)
    {
        for(int j(0); j < n; j++)
            cout << mas[i][j] << '\t';
        cout << endl;
    }
    system("pause");
}
zss
Модератор
Эксперт С++
 Аватар для zss
5947 / 5552 / 1784
Регистрация: 18.12.2011
Сообщений: 14,184
Завершенные тесты: 1
02.12.2013, 10:38     Задачи на массивы #9
Цитата Сообщение от vGolde Посмотреть сообщение
temp = mas[n][i];
mas[n][i] = mas[i][n];
mas[i][n] = temp;
индекс n выходит за пределы диапазона.
Не забывайте, что нумерация начинается с нуля,
а последний индекс равен n-1

Наверное, Вы забыли заменить n на k
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2013, 10:46     Задачи на массивы
Еще ссылки по теме:

Задачи на массивы в С++ C++
C++ Задачи на массивы С++

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

Или воспользуйтесь поиском по форуму:
vGolde
-116 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 23
02.12.2013, 10:46     Задачи на массивы #10
Цитата Сообщение от zss Посмотреть сообщение
индекс n выходит за пределы диапазона.
Не забывайте, что нумерация начинается с нуля,
а последний индекс равен n-1

Наверное, Вы забыли заменить n на k
Нет, просто не проверил работу кода. В циклах дописать до n-1.

С k - это уже третья задача.
Yandex
Объявления
02.12.2013, 10:46     Задачи на массивы
Ответ Создать тему
Опции темы

Текущее время: 00:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru