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

Задачка. массив указателей на одномерный массив - C++

Восстановить пароль Регистрация
 
Kostia1012
1 / 1 / 0
Регистрация: 17.11.2013
Сообщений: 96
12.12.2013, 18:39     Задачка. массив указателей на одномерный массив #1
Привет всем. Помогите, пожалуйста. Два дня мучился, писал, оказалось, что писал совсем не то, что нужно.
Исходное задание такое:
Создайте массив указателей на одномерный массив, содержащий 9 элементов целого типа (элементы массива вводятся пользователем). Выведите на экран адрес каждого четного элемента. Выведете на экран значение элемента, индекс которого меньше индекса, введенного пользователем на 1.
Обращение ко всем переменным должно осуществляться через указатели.
Посмотрите, может для вас это не сложная задача...

Мне нужно хотя бы как Создать массив указателей на одномерный массив, содержащий 9 элементов целого типа (элементы массива вводятся пользователем).
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.12.2013, 19:23     Задачка. массив указателей на одномерный массив #2
Массив из трёх указателей на одномерные массивы из девяти int:
C++
1
2
3
int **arr = new int*[3];
for (int i = 0; i < 3; ++i)
    arr[i] = new int[9];
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6172 / 2901 / 284
Регистрация: 04.12.2011
Сообщений: 7,714
Записей в блоге: 3
12.12.2013, 19:43     Задачка. массив указателей на одномерный массив #3
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
#include <iostream>
#include <windows.h>
using namespace std;
int main(){
SetConsoleCP (1251); SetConsoleOutputCP (1251);
    int mass[] = {
        2, 1, 3, 5, 4, 6, 8, 7, 9
    };
 
const int sz = sizeof(mass)/sizeof(int) ;
 
cout << "Исходный массив" <<endl;
 
for(int i = 0; i < sz; ++i) cout << mass[i] <<" ";
cout << endl;
 
int *ptr_to_ptrs[sz];
 
for(int i = 0; i < sz; ++i) ptr_to_ptrs[i] = &mass[i];
cout << "Чётные тут : " <<endl;
for(int i = 0; i < sz; ++i){
if(!((*ptr_to_ptrs[i])%2))
cout << ptr_to_ptrs[i] << endl;
}
 
int user_ind=-1;
int are_fingers_streight = 0;//пессимистический прогноз
cout << "Введите целое число от 1 до" << " " << sz - 1 <<" ";
while(user_ind < 1 || user_ind > sz-1){
if(are_fingers_streight) cout << "Не велено пущать если не [1..."<< sz-1 <<"]\n ну-ко ещё разок... " ;
cin >> user_ind;
are_fingers_streight++;
cout << endl;
}
cout << "Элемент с индексом " << user_ind - 1 << ":" << endl;
cout << *ptr_to_ptrs[user_ind - 1];
 
cout<<endl;
system("pause");
return 0;
}
Kostia1012
1 / 1 / 0
Регистрация: 17.11.2013
Сообщений: 96
12.12.2013, 20:52  [ТС]     Задачка. массив указателей на одномерный массив #4
Благодарю, что помогаете...
Мне нужно по проще, без применения <windows.h> и всего, что с ним связано.
Включать нужно только <iostream>...
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6172 / 2901 / 284
Регистрация: 04.12.2011
Сообщений: 7,714
Записей в блоге: 3
12.12.2013, 21:59     Задачка. массив указателей на одномерный массив #5
Цитата Сообщение от Kostia1012 Посмотреть сообщение
Мне нужно по проще, без применения <windows.h> и всего, что с ним связано.
Уберите. Приглашения подайте на английском. Остановку в конце сделайте cin.get() или ещё как-то.
Думаю, если за 2 дня Вы написали, хотя бы "Hello world!", то это сразу снимает все перечисленные проблемы.
Yandex
Объявления
12.12.2013, 21:59     Задачка. массив указателей на одномерный массив
Ответ Создать тему
Опции темы

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