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

Стеки и удаление конкретного элемента из стека - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Указатели на функции + typedef http://www.cyberforum.ru/cpp-beginners/thread877339.html
Здравствуйте , я вот встретил такую конструкцию typedef int(*compare_func_t)(const void*val1, const void*val2); Не понял что она означает , погуглив , я нашел что это указатель на функцию . Насколько я понял это означает что с помощью typedef мы создаем новый тип указатель на функцию. Эта функция возвращает значения типа инт , получает два параметра типа воид. Ну зачем это делать. И как это...
C++ С++. Массивы. Указатели. Определить кол-во и сумму отрицательных элементов Ребят, срочно помогите пожалуйста! Завтра зачёт по с++, задачи будут примерное такие: 1) Написать прогу, которая заполняет случайным образом массив А (n<30) целочисленными значениями. Определить кол-во и сумму отрицательных элементов . Массив вывести в файл. (Использовать указатели для работы с массивом) Народ, очень прошу, выручайте! http://www.cyberforum.ru/cpp-beginners/thread877329.html
C++ Запрет на ввод букв
Помогите пожалуйста сделать запрет на ввод букв: #include "stdafx.h" #include <cstdlib> #include <iostream> #include <math.h> #include <conio.h> using namespace std;
курсач (дискретная математика, пузырьковая сортировка) C++
Здравствуйте! нужна курсовая работа на тему "Пузырьковая сортировка". Вместе с графикой. Помогите пожалуйста.
C++ Не могу исправить ошибки. Заранее спасибо http://www.cyberforum.ru/cpp-beginners/thread877304.html
Задание: Программа реализует двусвязный список. Функции: 1) Добавление элемента на заданую пользователем позицию; 2) Удаление элемента по ключу; 3) Вывод двусвязного списка на экран; 4) Поиск элемента по ключу. #include <iostream.h> #include <stdlib.h> #include <string.h> #include <windows.h> //#include "stdafx.h" #include <conio.h> using namespace std; class Comp
C++ Ввод имени в программу с клавиатуры, содержащее 2 или более слова Помогите, пожалуйста, сделать возможным ввод имени, состоящего из нескольких слов. Например, пункт назначения "Москва" читается без проблема, а "Нижний Новгород" нет - второе слово "Нижний" распознаётся уже как номер рейса. Наверное, это нужно делать через getline, не могу понять как На фотографии-изначальное задание #include <iostream> #include <cctype> #include <cstring> #include... подробнее

Показать сообщение отдельно
Wolferine
0 / 0 / 0
Регистрация: 24.05.2013
Сообщений: 10
24.05.2013, 20:29  [ТС]     Стеки и удаление конкретного элемента из стека
Цитата Сообщение от Ded_Vasilij Посмотреть сообщение
я когда-то делал так
Спасибо за помощь, но ваш метод не подойдет для меня. Насколько я смог прочитать ваш кусочный код, вы удаляете i-тый элемент (то есть элементы в вашем списке идут по порядку), что не совсем совпадает с моей ситуацией. Буду пробовать дальше

Добавлено через 14 минут
UPDATE:
Изменил ваш код на такой:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void delAt(spis*& top, int num_to_delete)
{
    spis* p1 = 0;
    spis* p2 = 0;
    p1 = top;
    for(int j = 0; p1->num != num_to_delete; j++)
    {
        p1 = p1->next;
    }
    p2 = p1->next;
    p1->next = p2->next;
    delete p2;
}
Здесь num_to_delete - это номер таксиста, которого надо удалить (не порядковый, а личный идентификатор!)

Подаю на вход вот это:
Кликните здесь для просмотра всего текста
Номер: 1, Фамилия: Вавилов
Номер: 2, Фамилия: Денисов
Номер: 3, Фамилия: Иванов
Номер: 4, Фамилия: Петров


Ввожу, удалить таксиста с номером "2"
А на выходе имею вот что:
Кликните здесь для просмотра всего текста
Номер: 2, Фамилия: Денисов
Номер: 3, Фамилия: Иванов
Номер: 4, Фамилия: Петров


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