0 / 0 / 0
Регистрация: 04.10.2009
Сообщений: 15
1

Списки и Очереди

09.03.2013, 19:08. Показов 480. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите реализовать следующее задание через Списки и Очередь.
"В числовой последовательности вставить после каждого простого числа удвоенное среднее геометрическое всех элементов последовательности"

Добавлено через 1 минуту
Пишу списки. Сам додумался до этого

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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <string.h>
#include <iostream>
using namespace std;
 
struct node
{
int info;
node *link;
};
 
node *k, // Рабочий указатель
*l, *r; // Левый и правый указатели
int w;
int z=0; //счетчик чисел в очереди
int sum; //произведение чисел в очереди
float g; //среднее геометрическое
 
int prost(int n)
{
int i; // Счетчик циклов
int is_prime; // Булев флаг
 
// Предположим что число является простым пока не докажем обратное
 
is_prime = true;
 
// Проверка числа, выполняя проверку делимости
// на все целые числа от 2 до sqrt(n).
 
i = 2; 
while (i <= sqrt(static_cast<double>(n))) {
// пока значение переменной i <= sqrt(n),
 
if (n % i == 0) // если значение переменной i,
// случайно делится на n
is_prime = false; // n не является простым числом
 
i++; // прибавить 1 к значению переменной i 
}
 
// Напечатать результаты
 
if (is_prime)
return 1;
else
return 0;
}
 
void add()
{
cout<<"Bведите число";
cin>>w;
 
while (!feof(stdin))
{
k = new node;
k->link = NULL;
k->info = w;
sum=sum*w;
r->link = k; // Добавление узла справа
r = k;
cout<<"Bведите число";
cin>>w;
z++;
 
}
}
 
void vivod()
{
k = l;
while (k != NULL)
{
cout<<k->info<<" ";
k = k->link;
}
cout<<"\n";
}
 
 
 
void main()
{
setlocale(LC_CTYPE,"Russian");
 
 
// Создание пеpвого узла
 
cout<<"Bведите число";
cin>>w;
k = new node;
k->link = NULL;
k->info = w;
l = r = k;
 
z=1;
sum = w;
// Построение остальных узлов очереди
 
add();
 
// Вывод содержимого очереди
 
vivod();
 
g=pow(sum,1.0/z);
 
k = l;
while (k != NULL)
{
if(prost(k->info)==1)
{
node *newnode;
newnode = new node;
newnode->link = NULL;
newnode->info = g;
r->link = newnode; // Добавление узла справа
r = newnode;
}
}
 
}
Не уверен в проверке на простые числа и вставке геометрического. Помогите...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.03.2013, 19:08
Ответы с готовыми решениями:

Списки. Очереди.
Разработать программу работу со списком очередей списков. Программа должна содержать следующие...

Списки. Стеки. Очереди
Квадрат разбит на {4}^{k} равновеликих квадратных клеток. Квадрат перегибается поочередно...

Списки, стеки, очереди
В процессе разбора этой темы появились программки на список. Сделанные через класс, не идеал...

Очереди и Двусвязные списки!
1) Создать очередь и заполнить её случайными целыми числами из диапазона 1-100. Найти и вывести на...

0
09.03.2013, 19:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.03.2013, 19:08
Помогаю со студенческими работами здесь

Задача на тему Стеки, очереди, деки, списки, кольца
Программа на вход получает список школьников следующего вида: 9 Иванов 10 Петров ...

Списки, Стеки,Очереди (На сколько кусков распадется оставшаяся часть листа? )
Доброго всем времени суток!! Помогите написать программу: Из листа клетчатой бумаги размером М*N...

Немного исправить ошибки. Тема: стэки, списки, очереди. Не понимаю в чем дело
// 15.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include...

Очереди. Каким образом считать две очереди из одного текстового файла?
Здравстуйте. В задании первый пункт состоит в том, что нужно сформировать две очереди по n...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru