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

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

Войти
Регистрация
Восстановить пароль
 
Niki25
0 / 0 / 0
Регистрация: 10.11.2009
Сообщений: 26
#1

Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) - C++

10.11.2009, 18:17. Просмотров 1095. Ответов 6
Метки нет (Все метки)

Собственно 3 задачи в которых нужна помощь...Может кто нить встречался с таким родом задач?



1.Создать массив из 20 элементов, заменить 5 выбранных пользователем элементов массива и вывести новый на экран.

в этой задаче я не могу понять как вывести новый массив из 20 элементов с заменёнными элементами

Мой вариант
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
#include "stdafx.h"
#include "conio.h"
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
 
int _tmain(int argc, _TCHAR* argv[])
{
    char a[20];
    int i;
    float d;
    for (int i = 1; i < 21; i++)
    {
        a[i] = rand()%200;
        printf ("\na[%d] \t= %d", i, a[i]);
    }
    for(int w=0;w<5;++w)
    {
    printf("\n %i. Введите номер элемента который вы хотите заменить:",w);
    scanf("%i",&i);
    printf("Элемент номера %i, имеет следущее значение a[%i] = %d",i,i,a[i]);
    printf("\n Введите значение элемента a[%i]= ",i);
    scanf("\n %f",&d);
    }
    getch ();
}


2.
Создать массив 4 на 5 и в нём заменить 5 выбранных элементов

в этой задаче,аналогично как и в прошлой, не знаю как заменить в самом массиве 5 выбранных элементов

Мой вариант
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stdafx.h"
#include "conio.h"
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int a[4][5];
    int i,j;
    for(i=1;i<=4;i++)
    {
        for(j=1;j<=5;j++)
        {
        a[i][j]=rand()%100+1;
        printf("%d\t", a[i][j]);
        }
        printf("\n");
 
        }
    getch();
}

3. Создать область памяти из 20 элементов и заменить 5 элементов выбранных пользователем

вот тут как я понял с динамическим распределением памяти...но не до конца понимаю

Мой вариант

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "stdafx.h"
#include "conio.h"
#include "stdio.h"
#include "stdlib.h"
#include "malloc.h"
 
int _tmain(int argc, _TCHAR* argv[])
{
int *a;
a=(int*)malloc(20*sizeof(int));
for(int i=1;i<=20;i++)
{
    a[i]=rand()%10+1;
    printf("a[%d]\n",a[i]);
}
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2009, 18:17     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов)
Посмотрите здесь:
Сформировать второй массив из случайно выбранных элементов первого C++
C++ Из массива A(n) удалить m наудачу (случайно) выбранных элементов
Динамический массив (замена элементов по правилу) C++
Массив и функции пользователя (замена элементов по принадлежности к промежутку) C++
C++ Замена первых элементов каждой строки квадратной матрицы на сумму элементов этой строки
C++ Замена первой группы одинаковых элементов на последнюю группу одинаковых элементов
C++ Замена элементов в столбцах
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
10.11.2009, 18:23     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) #2
Niki25, ты везде вводишь номер элемента и элементу a[i] присваивай новое значение и всё
или в матрице вводишь номер строки (i) и номер столбца (J) и элементу a[i][j] присваиваешь новое значение
Niki25
0 / 0 / 0
Регистрация: 10.11.2009
Сообщений: 26
10.11.2009, 18:30  [ТС]     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) #3
эт я так понял ко второму=)

если честно, я бы не отказался от наглядного изображения той последовательности которую ты предложил
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
10.11.2009, 18:35     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
int main()
{
    int i ;
    int arr [] = {1,2,3,4,5,6,7,8,9,10};
    const int size = sizeof(arr) / sizeof(*arr);
    std::cout << " input i " << std::endl;
    std::cin >> i ;
    arr[i] = 0 ; 
    for (int i = 0 ; i < size ; i++)
        std::cout << arr[i]<<' ';
    return 0;
}
я на СИ не пишу ну cin - ввод cout - вывод ) думаю понятно как это работает
Niki25
0 / 0 / 0
Регистрация: 10.11.2009
Сообщений: 26
13.11.2009, 18:41  [ТС]     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) #5
народ а омжет кто нить ещё сможет помочь мне?
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
13.11.2009, 19:10     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) #6
Цитата Сообщение от Niki25 Посмотреть сообщение
1.Создать массив из 20 элементов, заменить 5 выбранных пользователем элементов массива и вывести новый на экран.
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
#include "stdafx.h"
#include "conio.h"
#include "stdlib.h"
int _tmain(int argc, _TCHAR* argv[])
{
        int a[21];
        int i;
        int d;
        for (int i = 1; i < 21; i++)
        {
                a[i] = rand()%200;
                printf ("\na[%d] \t= %d", i, a[i]);
        }
        for(int w=0;w<5;++w)
        {
        printf("\n %i. Ââåäèòå Г*îìåð ýëåìåГ*ГІГ* êîòîðûé ГўГ» õîòèòå Г§Г*ìåГ*ГЁГІГј:",w);
        scanf("%i",&i);
        printf("ÝëåìåГ*ГІ Г*îìåðГ* %d, èìååò ñëåäóùåå Г§Г*Г*Г·ГҐГ*ГЁГҐ a[%d] = %d",i,i,a[i]);
        printf("\n Ââåäèòå Г§Г*Г*Г·ГҐГ*ГЁГҐ ýëåìåГ*ГІГ* a[%d]= ",i);
        scanf("\n %d",&d);
        a[i]=d;
        }
        printf("Íîâûé Г¬Г*Г±Г±ГЁГў:\n");
        for (int i = 1; i < 21; i++)
        {
               printf ("\na[%d] \t= %d", i, a[i]);
        }
        getch ();
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2009, 22:54     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов)
Еще ссылки по теме:
Замена элементов массива C++
матрица T(N,M), замена элементов C++
Замена элементов массива C++
C++ Замена элементов в массиве

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

Или воспользуйтесь поиском по форуму:
Niki25
0 / 0 / 0
Регистрация: 10.11.2009
Сообщений: 26
13.11.2009, 22:54  [ТС]     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) #7
спасибо тебе большое!
Yandex
Объявления
13.11.2009, 22:54     Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов)
Ответ Создать тему
Опции темы

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