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

Работа с динамическим списком - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ вычислить значение квадратов синусов http://www.cyberforum.ru/cpp-beginners/thread253826.html
1)вычислить значение квадратов синусов в интервале от 0 до 3 с шагом 0,2 2)в одномерном массиве состоящем из n элементов вычислить сумму эелементов массива больших введенного числа А 3)дана прямоугольная матрица.опеределить количество элементов больших максимального элемента
C++ С C# на С++ Еще учу C#, знаю уже достаточно много. Написал несколько программ. Хочу параллельно писать на С++ в RAD Studio. Какую литературу можете посоветовать? И сложно ли будет освоиться. На сколько большая разница без .NET? http://www.cyberforum.ru/cpp-beginners/thread253824.html
C++ Массивы
double i; double R; for(i=0.01;i<1;i+0.01) { R=0.2679*(1-exp(8*M_PI*i))/(1-0.2679*0.2679*exp(8*M_PI*i)); cout<<"\n "<<R; } getch();
Работа с битами - в файл записывается не то, что нужно C++
собственно что хочу сделать.... Пусть b - каждый бит байта a.val b ^= b ^ b ^ b ^ b ^ c; где с для i равного 0,1,5,6 будет 1, для остальных 0. // побитовые_операции.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream>
C++ Одномерный массив http://www.cyberforum.ru/cpp-beginners/thread253807.html
Здравствуйте. Нужна помощь в решении задачи: Дано числовой одномерный массив из 16 элементов. Найти четные элементы массива, значение которых не больше числа А, и их количество. Число А ввести с клавиатуры. Добавлено через 1 минуту Главное как найти эти парные элементы, больше за число А... Добавлено через 2 минуты #include <iostream> #include <conio.h> using namespace std;
C++ Функция меняет все отрицательные элементы массива на максимальный Написать функцию, которая принимает одномерный массив и его размерностью. Функция меняет в массиве все элементы меньше ноля, на максимальное значения этого массива. Добавлено через 41 минуту ппц!ну помогите!! подробнее

Показать сообщение отдельно
Kyrsor
7 / 7 / 1
Регистрация: 16.02.2011
Сообщений: 20
08.03.2011, 22:14
Итак. Начнем с начала.
Писано на VS2010
Все три begin это указатели на начало списков, q -- по сути флаг
теперь создаем первый список и запоминаем его начало
C++
1
2
3
4
a=new sp;
(*a).next=new (sp);
a=(*a).next;
begin=a;
и заполняем список
C++
1
2
3
4
5
6
7
8
9
10
        while(c!=27)
        {
                printf("Vvedite chislo pervogo spiska:"); 
                scanf("%f",&s);
                (*a).num=s;
                (*a).next=new (sp);
                a=(*a).next;
                c=getch();
        }
        (*a).next=NULL;
Второй список заполняется аналогично.
Теперь самое интересное
Инициализируем третий список и пробуем его заполнить.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
while((*a).next!=NULL) // берем элемент введенного списка, потом еще пока не кончатся
        {
                q=0;
                d=begin3;
                while((*d).next!=NULL) // и сравниваем со всеми по очереди элементами 
                {                              // формируемого списка.
                        if((*d).num==(*a).num)  // Если уже его включили, то q=1
                                q=1;
                        d=(*d).next;
                }
                if(q!=1)           // Если же такого не было, то добавляем элемент в 
                {                   // формируемый список
                        (*d).num=(*a).num;
                        (*d).next=new (sp);
                        d=(*d).next;
                }
                a=(*a).next;
        }
Потом так же для второго списка
Ну и выводим результат
По поводу некорректной работы. Я не специалист, но вроде разные компиляторы немного по разному могут работать с выделяемой памятью, к примеру, у меня был код, прекрасно работающий на консольном С++, но выдающий исключениек в VS. Может поэтому. У меня ввод был нормальный
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru