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

Помогите развязать задачу очень нужно на С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Указать индексы всех элементов заданной матрицы с наибольшими значениями http://www.cyberforum.ru/cpp-beginners/thread358277.html
1. в данной целочисленной матрице 6 на 6 указать индексы всех элементовс наибольшими значениями. 2. в данной действительной квадратной матрице 5 на 5 найти сумму элементов строки в которой...
C++ найти самую длинную непрерывную цепочку нулей в последовательности нулей и единиц Нужно найти самую длинную непрерывную цепочку нулей в последовательности нулей и единиц. В чем ошибка ? #include <iostream> #include <stdio.h> using namespace std; int main() {... http://www.cyberforum.ru/cpp-beginners/thread358263.html
C++ Помогите понять формулировку
Объясните пожалуйста суть задания. С языком С не знаком. Только не не большие знания С++ Строки данного класса строятся по правилам записи идентификаторов в языке С и могут включать в себя только...
C++ Программно нажать пробел в активном окне
Уважаемы форумчане, подскажите пожалуйста как создать бесконечный цикл нажатия пробела в активном окне. ЗЫ: Гуглил - не нашел ЗЫ2: Строго не судить - C++ учу второй день Заранее спасибо!
C++ exp(-40) http://www.cyberforum.ru/cpp-beginners/thread358246.html
Всем доброго времени суток, у меня не получается посчитать exp(-40) с необходимой точностью, я знаю как посчитать exp(-5) #include<iostream> using namespace std; int main() { double i, sum,...
C++ Класс содержащий элементы двух других классов Задание у Страуструпа: При наличии определений struct S У меня что-то не получается так сделать struct S{int x,y;}; struct T{char* p; char*q;}; class C подробнее

Показать сообщение отдельно
Thinker
Эксперт С++
4226 / 2200 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.09.2011, 11:58
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
#include<stdio.h>
#include<malloc.h>
 
typedef struct NODE
{
   int data;
   struct NODE *next;
} NODE;
 
void AddElement(NODE **first, NODE **last, int x)
{
   NODE *q;
   q = (NODE *)malloc(sizeof(NODE));
   q->data = x;
   q->next = NULL;
   if (*last == NULL)
      *first = q;
   else (*last)->next = q;
   *last = q;
}
 
int Extract(NODE **first, NODE **last, int *x)
{
   NODE *q;
   if (*first == NULL)
      return 0;
   *x = (*first)->data;
   q = *first;
   *first = (*first)->next;
   if (*first == NULL)
      *last = NULL;
   free(q);
   return 1;
}
 
int main ( )
{
   int x;
   NODE *first = NULL, *last = NULL;
   printf("x = "); scanf("%d", &x);
   while (x)
   {
      if (x > 0)
         printf("%d\n", x);
      else
         AddElement(&first, &last, x);
      printf("x = "); scanf("%d", &x);
   }
   while (Extract(&first, &last, &x))
      printf("x = %d\n", x);
   return 0;
}
Добавлено через 6 минут
Можно так:

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
#include<stdio.h>
#include<malloc.h>
 
typedef struct NODE
{
   int data;
   struct NODE *next;
} NODE;
 
void AddElement(NODE **first, NODE **last, int x)
{
   NODE *q;
   q = (NODE *)malloc(sizeof(NODE));
   q->data = x;
   q->next = NULL;
   if (*last == NULL)
      *first = q;
   else (*last)->next = q;
   *last = q;
}
 
int Extract(NODE **first, NODE **last, int *x)
{
   NODE *q;
   if (*first == NULL)
      return 0;
   *x = (*first)->data;
   q = *first;
   *first = (*first)->next;
   if (*first == NULL)
      *last = NULL;
   free(q);
   return 1;
}
 
int main ( )
{
   int x;
   NODE *first1 = NULL, *last1 = NULL;
   NODE *first2 = NULL, *last2 = NULL;
   printf("x = "); scanf("%d", &x);
   while (x)
   {
      if (x > 0)
         AddElement(&first1, &last1, x);
      else
         AddElement(&first2, &last2, x);
      printf("x = "); scanf("%d", &x);
   }
   while (Extract(&first1, &last1, &x))
      printf("x = %d\n", x);
   while (Extract(&first2, &last2, &x))
      printf("x = %d\n", x);
   return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru