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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
EVOR
0 / 0 / 0
Регистрация: 18.01.2010
Сообщений: 10
17.01.2011, 03:49     Рандомное заполнение и разворот списка #1
Помогите, пожалуйста решить вот такую задачу.
Создать односвязный список из случайных целых чисел, вывести его на экран, затем перевернуть и вывести результат.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2011, 03:49     Рандомное заполнение и разворот списка
Посмотрите здесь:

C++ Разворот текста
C++ Заполнение односвязного списка
Рандомное заполнение C++
C++ Из двоичной в десятичную+разворот
Заполнение списка с возможностью перестановки его строк C++
Рандомное заполнение матрицы, причем от числа до числа, введенного с клавиатуры C++
C++ Рандомное заполнение массива
Выполнить рандомное заполнение матриц C++
C++ Рандомное заполнение массива так, чтобы числа в нем не повторялись
C++ Заполнение списка рандомными целыми числами
Заполнение и вывод однонаправленного списка C++
Двумерный массив - рандомное заполнение C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1600 / 1228 / 121
Регистрация: 21.12.2010
Сообщений: 1,875
Записей в блоге: 7
17.01.2011, 09:32     Рандомное заполнение и разворот списка #2
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
#include <iostream>
#include <ctime>
#include<cstdlib>
using namespace std;
 
struct node{
    int data;
    node* next;
    node():next(0){}
    node(int a):data(a), next(0){}
};
struct list{
    node* head;
    list():head(0){}
    void add(int);
    void revers();
    void show();
};
void list::add(int a){
    node* temp=new node(a);
    if(head==0) head=temp;
    else{
        node* t=head;
        while(t->next!=0) t=t->next;
        t->next=temp;
    }
}
void list::revers(){
    node* temp=head;
    node* t=temp;
    while(t->next!=0)t=t->next;
    head=t;
    do{
        t=temp;
        while(t->next->next!=0){
            t=t->next;
        }
            t->next->next=t;
            t->next=0;
    }while(t!=temp);
}
void list::show(){
    node* temp=head;
    while(temp!=0){
        cout<<temp->data<<"  ";
        temp=temp->next;
    }
    cout<<"\n\n";
}
int main(){
    srand(time(0));
    list l;
    for(int i=0;i<10;i++) l.add(rand()%20-10);
    l.show();
    l.revers();
    l.show();
}
Yandex
Объявления
17.01.2011, 09:32     Рандомное заполнение и разворот списка
Ответ Создать тему
Опции темы

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