Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/56: Рейтинг темы: голосов - 56, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 12.03.2013
Сообщений: 8

Нужно создать список и заполнить его 10 случайными целыми числами и вывести на экран

14.03.2013, 16:03. Показов 11296. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пж. Нужно создать список и заполнить его 10 случайными целыми числами и вывести на экран. А все четные числа из списка удалить. Вывести на экран еще раз. (не забудьте проверку на first)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.03.2013, 16:03
Ответы с готовыми решениями:

Заполнить файл N вещественными случайными числами, найти минимальное значение и вывести его на экран
Заполнить файл N вещественными числами, полученными с помощью генератора случайных чисел. Открыть этот файл,найти минимальное значение и...

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

Заполнить множество случайными числами и вывести на экран
как сделать так, чтобы заполнение массивов a и b было рандомными цифрами и чтобы они выводились на экран ? #include <iostream> ...

7
Неэпический
 Аватар для Croessmah
18146 / 10730 / 2066
Регистрация: 27.09.2012
Сообщений: 27,030
Записей в блоге: 1
14.03.2013, 16:04
Цитата Сообщение от Ed1986 Посмотреть сообщение
Нужно создать список
Односвязный?
1
0 / 0 / 0
Регистрация: 12.03.2013
Сообщений: 8
14.03.2013, 17:06  [ТС]
да))

Добавлено через 27 минут
Цитата Сообщение от Croessmah Посмотреть сообщение
Односвязный?
да-да)))
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
14.03.2013, 19:44
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
#include <iostream>
#include <list>
#include <iterator>
#include <cstdlib>
#include <ctime>
#include <algorithm>
template <class T>
inline T rnd(T& x)
{
   return x = rand()%10;
}
template <class T>
inline bool is_even(T& x)
{
   return !(x%2);        
}
int main()
{
     srand(time(NULL));
     std::list<int> l(10);
     std::for_each(l.begin(), l.end(), rnd<int>);
     std::copy(l.begin(), l.end(), std::ostream_iterator<int> (std::cout," "));
     l.erase(std::remove_if(l.begin(), l.end(), is_even<int>), l.end());
     std::cout<<std::endl<<"After delete: "<<std::endl;
      std::copy(l.begin(), l.end(), std::ostream_iterator<int> (std::cout," "));
     return 0;
}
1
0 / 0 / 0
Регистрация: 12.03.2013
Сообщений: 8
14.03.2013, 21:26  [ТС]
BumerangSP, извините но мне нужно в таком виде
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
#include <iostream>
using namespace std;
struct comp {
        char name[20]; // Имя переменной
        int value; // Значение переменной
        comp* next; //Ссылка на следущий элемент списка
}; 
 
void add(comp* &first, char n[20], int v){
//добавление элемента в конце списка
    comp* p=first;
    comp* c = new comp; 
    strcpy(c->name,n);
    c->value=v;
    c->next=NULL;
    if(first==NULL) 
        first=c;
    else{
        while(p->next!=NULL){
            p=p->next;
        }
        p->next=c;
    }
}
 
void display(comp* p){
//вывод на экран, начиная с элемента p
    while(p!=NULL){
        cout<<p->name<<" "<<p->value<<endl;
        p=p->next;
    }
 
}
 
void main(){
    comp* first=NULL;
//добавим 2 элемента
    add(first,”Bob”,13);
    add(first,”Alice”,21);
    display(first);
    //удалим первый элемент
    comp* n = first;
    first=n->next;
    delete first;
    cout<<----”
    display(first);
}
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
14.03.2013, 22:35
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
#include <iostream>
#include <cstdlib>
#include <ctime>
class mylist
{
        struct s
        {
           int data;
            s* next;                 
      }*first;
public:
      mylist(): first(NULL) {}
      ~mylist()
      {
                    
      }
        void add(const int& x)
      {
              s* cur = new s();
              cur->data = x;
              cur->next = first;
              first = cur;
       }
       void delete_even()
       {
             s* cur = first;
             s* tmp = first;   
             while (cur)
              {
                      if (!(cur->data%2))
                      {
                          if (cur == first)
                          {
                             first = first->next;
                             delete cur;
                             cur = first;
                        }
                        else
                        {
                         tmp->next = cur->next;
                              delete cur;  
                              cur = tmp->next;
                          }
                      } else
                      {
                         tmp = cur;
                         cur = cur->next;
                       }              
             } 
       }
       void display()
        {
              s* tmp_first = first;
              while (tmp_first)
              {
                      std::cout<<tmp_first->data<<" ";
                      tmp_first = tmp_first->next;
             }
             std::cout<<std::endl;
      }      
};
 
int main()
{
     srand(time(NULL));
     mylist obj;
     for (int i=0; i<10; ++i)
        obj.add(rand()%10);
    obj.display();
    obj.delete_even();
    obj.display();  
     return 0;
}
Добавлено через 9 минут
Забыл деструктор описать:
C++
1
2
3
4
5
6
7
8
9
~mylist()
      {
                while (first) 
              {
             s *next = first->next;
             delete first;
             first = next;
            }       
      }
1
0 / 0 / 0
Регистрация: 12.03.2013
Сообщений: 8
15.03.2013, 09:30  [ТС]
BumerangSP, а что обозначает эта запись?
Цитата Сообщение от BumerangSP Посмотреть сообщение
~mylist()
* * * {
* * * * * * * * while (first)
* * * * * * * {
* * * * * * *s *next = first->next;
* * * * * * *delete first;
* * * * * * *first = next;
* * * * * * } * * *
* * * }
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
15.03.2013, 11:34
Ed1986, деструктор. Чтоб как полагается: выделили память - освободили. В моем коде он пустой. Его надо добавить, заменив 13-16 строчки.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.03.2013, 11:34
Помогаю со студенческими работами здесь

Заполнить двухмерный массив случайными числами и вывести на экран
1.Заполнить двухмерный массив случайными числами и вывести на экран. 2.Модифицировать его следующим образом: элементу побочной...

Создать статический массив на 10 элементов и заполнить его случайными числами из диапазона [0;5]
Знает кто-то, как решить задачу на С++? Создать статический массив на 10 элементов и заполнить его случайными числами из диапазона ....

Создать и заполнить массив случайными числами и вычислить сумму его элементов
Привет ребята, подскажите как реализовать вот это задание? &quot;используя указатели, нписать следующую программу. программа принимает с...

Заполнить одномерный массив n случайными числами от -15 до 3. Вычислить и вывести на экран
Заполнить одномерный массив n случайными числами от -15 до 3. Вычислить и вывести на экран

Как заполнить матрицу 6*9 случайными действительными числами и вывести на экран?
Помогите плиз!!


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru