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

Редактирование и удаление из списка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Отсортировать большое число элементов за минимальное время, используя битовый массив http://www.cyberforum.ru/cpp-beginners/thread1312239.html
Всем привет! Вот, получил задание такое: написать сортировку большого числа элементов за минимальное время, используя битовый массив. Работать с числами используя их двоичный код. Видимо надо использовать битовые операции, смотреть на разряды и т.д. Но я на самом деле не знаю с чего начать, т.к. тут еще есть условие о большом количестве элементов и минимальном времени. И еще этот битовый...
C++ Выделение динамической памяти размером полученным из функции Функция ввода размера динамического массива int Kolvo(){ int x; printf("Введите количество элементов массива числом(от 1 до 1000):"); fflush(stdin); scanf_s("%d", &x); while(x<=0 || x>=1000) { printf("Ошибка!!!Введите количество элементов массива числом и больше нуля!\n"); printf("Введите количество элементов массива числом(от 1 до 1000):"); http://www.cyberforum.ru/cpp-beginners/thread1312219.html
Какая-то мистика с if C++
Программа работает нормально, но если я убираю проверку в перегрузке оператора + условие if, то функция strcat не склеивает... #include <iostream> #include <cstring> #include <cstdlib> #include <clocale> using namespace std; class strtype { char *p; int len;
C++ Пройти массив по столбцам
Задача звучит так: нахождение номера строки, в которой расположен минимальный элемент любого столбца двумерного массива. Другими словами, нужно в каждом столбце массива найти минимальный элемент и вывести индекс строки этого элемента. Я вот не могу придумать, как пройти массив не по строкам, а по столбцам, чтобы искать минимальный в столбцах. Может кто подсказать?
C++ Список со структурой - не работает функция http://www.cyberforum.ru/cpp-beginners/thread1312192.html
есть структура с городами и рейсами нужно сделать в меню функцию по изменению данных в программе вот сама функия node* modify(node *head, int number){//Изменение node *ptr = head; int count = 0; int i = 0; while (ptr){ if (ptr->data.number == number){
C++ Сортировка массива по другим значениям Скажем у нас есть массив А = {1,2,3} На пример для 1 массива A присвоить значение 3 , для 2 занечение 1,для 3 значение 2 после сортировки получаем А={2,3,1}. Как это сделать ? подробнее

Показать сообщение отдельно
Valera1984
1 / 1 / 0
Регистрация: 02.02.2014
Сообщений: 105
27.11.2014, 11:55  [ТС]
Cra3y,

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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
void insert_dogovor  () //добавление
   {
   Dogovor s;
   char c;
   cout<<endl<< "Enter Dogovor\n";
   cout <<"vvedite id dogovora (ot 3001) ";
   cin>>s.Dogovor_id;
   proverka_id_dogovor(s.Dogovor_id);
   cin.get(c);
   cout<<"vvedite id klienta (ot 2001-2999) ";
   cin>>s.klient_id;
   cin.get(c);
   cout<<"vvedite id uslugi: ADSl-100,Kommutir internet-101,Pochta-102 ";
   cin>>s.uslugi_id;
   cin.get(c);
 
        List_Dogovor *node = new List_Dogovor;
        node->dogovor = s;
        node->next = head_d;
        head_d = node;
};          
 
//////вывод на экран
 
void print_dogovor()
    {
        cout <<"\nlist of dogovor\n! id  !   id_Klienta    !     id_Uslugi   !\n";
                            printf("____________________________________________\n");
        List_Dogovor *node = head_d;
        while(node != NULL)
        {
            printf("%5d !      %5d      !       %5d\n",node->dogovor.Dogovor_id,node->dogovor.klient_id,node->dogovor.uslugi_id);
            node = node->next;
            
        }
                         printf("____________________________________________\n");
    };
///запись в файл
void File_dogovor()//   
    {
 
FILE * f;
f = fopen ("C:/dogovor.txt","r+");
List_Dogovor *temp = head_d; char buf[4096];
while(temp != NULL)
{
    
    sprintf(buf,"%5d%5d%5d\n",temp->dogovor.Dogovor_id,temp->dogovor.klient_id,temp->dogovor.uslugi_id);
        fputs(buf, f);
   
    putc('\n',f);       
    
    temp = temp ->next;
}
fclose(f);
    
}
///из файла заполняется структура
 
void IZ_File_dogovor()
{
    FILE * f;
    char buf[BUFSIZ];
    /* открыть файл, проверить, что открылся... */
 
    f = fopen ("C:/dogovor.txt","r");
    Dogovor a={0,0,0};
 
    while ( fgets(buf,BUFSIZ,f) )
 
    {
        fscanf(f,"%5d%5d%5d",&a.Dogovor_id,&a.klient_id,&a.uslugi_id);
        if(feof(f))
            break;
        List_Dogovor*node = new List_Dogovor;
        node->dogovor = a;
        node->next = head_d;
        head_d = node;
 
    }
 
 
    fclose(f);
 
}
Добавлено через 15 минут
Cra3y,

на экран вывод не правильно написал... выводит вот что:
C++
1
2
3
4
 3000 2000  100
 3001 2001  101
 5555    5    5
 3003 2003  102
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru