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

Очереди и Двусвязные списки! - C++

Восстановить пароль Регистрация
 
apteka
3 / 3 / 0
Регистрация: 08.05.2012
Сообщений: 12
23.05.2012, 16:10     Очереди и Двусвязные списки! #1
1) Создать очередь и заполнить её случайными целыми числами из диапазона 1-100. Найти и вывести на печать: Все простые числа, количество чётных и нечётных чисел, все числа кратные 5-и и 10-и.

2) Даны указатели Р1 и Р2 на первый и последний элементы непустого двусвязного списка, содержащего четное количество элементов. Создать два новых списка, первый из которых содержит первую половину элементов исходного списка, а второй - вторую половину. Вывести указатели на начало и конец новых списков. Элемент с адресом Р1 должен входить в первый циклический список, а элемент с адресом Р2-во второй.

Добавлено через 21 час 43 минуты
Очень нужна помощь(
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2012, 16:10     Очереди и Двусвязные списки!
Посмотрите здесь:

ДВУСВЯЗНЫЕ СПИСКИ C++
C++ ДВУСВЯЗНЫЕ СПИСКИ!!!
двусвязные списки C++
Двусвязные списки C++
Шаблонные двусвязные списки. C++
Двусвязные списки в с++ C++
Односвязные и двусвязные списки C++
Линейные двусвязные списки C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
apteka
3 / 3 / 0
Регистрация: 08.05.2012
Сообщений: 12
27.05.2012, 15:11  [ТС]     Очереди и Двусвязные списки! #2
1) Помогите пожалуйста с поиском простых чисел. В той программе формируется очередь из 100 случайных целых чисел.
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
#include "stdafx.h"
#include <iostream>
#include <ctime>
#define  N 100    //Размер очереди
using namespace std;
 
struct Node 
  { 
    int d; 
    Node *p;  
  };   
 
 
Node * firstq (int d);
void addq (Node **pend, int d);
int delq (Node **pbeg);
 
int main()
    
  { int j;
    setlocale(LC_CTYPE, "Russian");
    Node *pbeg = firstq(rand()%100);
    Node *pend = pbeg;
    for (int i=2; i<N+1; i++)
      addq (&pend, i);
 
 
      while (pbeg)
      cout << delq (&pbeg) << ' ';
      cout << "\n ";
    return 0;  
  
}   
 
Node * firstq (int d)
// Начальное формирование очереди
{  
  Node *pv = new Node;
   pv -> d  = d;
   pv -> p  = 0;
 return pv;   
}
 
void addq (Node **pend, int d)
// Добавление элемента  в конец очереди
{   
   d = rand()%100; 
   Node *pv = new Node;
   pv -> d  = d;
   pv -> p  =0;
   (*pend) -> p  = pv;
   *pend = pv;   
}
 
int delq (Node **pbeg)
// Выборка элемента из очереди
{  
  int temp = (*pbeg) -> d;
  Node *pv = *pbeg;
  *pbeg = (*pbeg) -> p; 
  delete pv; 
  return temp;  
}
Yandex
Объявления
27.05.2012, 15:11     Очереди и Двусвязные списки!
Ответ Создать тему
Опции темы

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