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

Есть три переменные. Используя указатели на указатели, поменять значение максимальной и минимальной переменной

12.03.2016, 12:52. Показов 2289. Ответов 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
35
36
#include <iostream>
#include <stdlib.h>
#include<iomanip>
using namespace std;
 
 
void min_max(int*pa, int*pb, int*pc);
    
void main(){
    int a = 1, b = 1,c = 1;
    int*pa = &a, *pb = &b, *pc = &c;
    cout << a << b << c;
    min_max(pa, pb, pc);
    cout << a << b << c;
 
    system("pause");
}
 
void min_max(int*pa, int*pb, int*pc){
    int*max = 0, *min = 0, tmp;
    if (*max < *pa)
        *max = *pa;
    if (*max < *pb)
        *max = *pb;
    if (*max < *pc)
        *max = *pc;
    if (*min > *pa)
        *min = *pa;
    if (*min > *pb)
        *min = *pb;
    if (*min > *pc)
        *min = *pc;
    tmp = *max;
    *max = *min;
    *min = tmp;
}
При компиляции получаю - frames below may be incorrect and/or missing no symbols loaded for kernel32.dll.
P.S. Только начал изучать С++, с указателями еще не разобрался. Укажите пожалуйста в чём ошибка.

Добавлено через 17 минут
уже вижу что напутал с указателями на указатели


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
#include <iostream>
#include <stdlib.h>
#include<iomanip>
using namespace std;
 
 
void min(int**ppa,int**ppb,int**ppc);
 
void main(){
    int a=1,b=2,c=3;
    int*pa=&a,*pb=&b,*pc=&c;
    int**ppa=&pa,**ppb=&pb,**ppc=&pc;
    cout<<a<<b<<c;
    min(ppa,ppb,ppc);
    cout<<a<<b<<c;
    system("pause");
}
    
void min(int**ppa,int**ppb,int**ppc){
    int **max = 0, **min = 0;
 
    if(**max<**ppa)
        **max=**ppa;
    if(**max<**ppb)
        **max=**ppb;
    if(**max<**ppc)
        **max=**ppc;
    if(**min>**ppa)
        **min=**ppa;
    if(**min>**ppb)
        **min=**ppb;
    if(**min>**ppc)
        **min=**ppc;
    int tmp;
    tmp=**max;
    **max=**min;
    **min=tmp;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.03.2016, 12:52
Ответы с готовыми решениями:

В matlab есть указатели на переменные или что-нибудь похожее на указатели?
Здравствуйте, в matlab есть указатели на переменные? или что-нибудь похожее на указатели? нужно хранить в объекте информацию: на...

Используя нетипизированные указатели и указатели на подпрограммы обобщить сортировку пузырьком
Смысл задания в том, что нужно отсортировать массив структур из 3х полей по сумме координат есть структура struct XYZ{ ...

Выполнить обмен значениями двух переменных используя указатели на эти переменные
Выполнить обмен значениями двух переменных используя указатели на эти переменные.

2
62 / 62 / 55
Регистрация: 18.10.2014
Сообщений: 190
12.03.2016, 13:03
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 <iostream>
#include <stdlib.h>
#include<iomanip>
using namespace std;
 
void min_max(int*pa, int*pb, int*pc);
    
void main(){
    int a = 2, b = 1,c = 3;
    int*pa = &a, *pb = &b, *pc = &c;
    cout << a << b << c<<endl;
    min_max(pa, pb, pc);
    cout << a << b << c;
 
    system("pause");
}
 
void min_max(int*pa, int*pb, int*pc){
    int*max , *min, tmp;
    max=min=pa;//указываем на первое число ,если 0 то не правильно так как в проверка мб такое что нет 0
    if (*max < *pb)//проверяем на след 2 числа
        max = pb;//указывает если максим
    if (*max < *pc)//тоже самое
        max = pc;
    if (*min > *pb)//проверка на минимум
        min = pb;//указывает на минимум 
    if (*min > *pc)//
        min = pc;
    tmp = *max;//меняем местами
    *max = *min;
    *min = tmp;
}
1
0 / 0 / 0
Регистрация: 08.12.2015
Сообщений: 3
12.03.2016, 13:10  [ТС]
Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.03.2016, 13:10
Помогаю со студенческими работами здесь

Поменять строки местами, используя указатели
Доброго времени суток! Такое дело: имеется двумерный массив char (массив строк в общем-то). Необходимо поменять местами 2 элемента,...

Поменять элементы массива местами используя указатели
Указатель не должен менять своего значения

Поменять местами элементы двух массивов (используя указатели)
Помогите с заданием : поменять местами элементы 2х массивов c++. Нужно сделать с использование указателей.

Как поменять первый символ с последним в строке используя указатели?
Здравствуйте. Подскажите пожалуйста, как поменять первый символ с последним в строке используя указатели? С массивом понятно, а...

Поменять местами элементы массива с четными и нечетными индексами используя указатели
Поменять местами элементы массива с четными и нечетными индексами используя указатели Ну вот не знаю как сделать, честно... Мой...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru