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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
paradox92
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 38
#1

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

01.03.2010, 18:13. Просмотров 1086. Ответов 4
Метки нет (Все метки)

Помогите пожалуйста составить программу в С++.

Задание такое: "Разработать программу, которая использует генерацию случайных чисел для создания предложений".
Подробности: 1. использовать 4 массива-указателя (char) с названиями: "article" "noun" "verb" "preposition"
2. Программа должна создавать предложения случайно выбирая слова из каждого массива в следующем порядке: article, noun, verb, preposition, article, noun.
3. Слова должны разделяться пробелами; при выводе окончательного предложения оно должно начинаться с заглавной буквы и заканчиваться точкой.
4. Программа должна генерировать 10 предложений
5. Массивы заполнить так:
article: 'the' 'a' 'one' 'some' 'any'
noun: 'boy' 'girl' 'dog' 'town' 'car'
verb: 'drove' 'jumped' 'ran' 'walked' 'skipped'
preposotiion: 'to' 'from' 'over' 'under' 'on'

Заранее спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.03.2010, 18:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разработать программу, которая использует генерацию случайных чисел для создания предложений (C++):

Напишите программу, которая использует функцию для вычисления среднего геометрического трех чисел типа int, что вводит пользователь. - C++
Напишите программу, которая использует функцию для вычисления среднего геометрического трех чисел типа int, что вводит пользователь. Язык...

Реализовать генерацию случайных чисел для игры "Угадай число" - C++
Всем привет!написал код для игры. По условию компьютер должен загадать число от 1 до 100 и пользователь должен отгадать это число за 6...

сделать генерацию случайных чисел - C++
Как сделать генерацию случайных чисел??

Реализовать генерацию случайных чисел с помощью функции srand() - C++
Ребят, есть функция srand(time(NULL)). Хочу поместить ее в цикл, чтоб с клавиатуры вводить например 5, а функция возвращала на екран 5...

Напишите программу которая использует функцию для подсчета букв. - C++
Ку, всем. Можете помочь и наглядно обеснить. Напишите программу которая использует функцию для подсчета букв. Использовать string as...

Составить программу, которая формирует файл целых чисел, получаемых с помощью датчика случайных чисел - C++
Блин, братва!!!!=) Последняя работа в этом году, а сдать нужно до субботы, помогите пожалуйста!!!! Задание 1. Составить...

4
CyBOSSeR
Эксперт С++
2305 / 1675 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
01.03.2010, 18:41 #2
paradox92,
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
#include <iostream>
 
int Rand(int max)
{
  return rand() % max;
}
 
int main()
{
  const char* article[] = {
    "the", "a", "one", "some", "any"
  };
  
  const int article_size = sizeof(article) / sizeof(article[0]);
  
  const char* noun[] = {
    "boy", "girl", "dog", "town", "car" 
  };
 
  const int noun_size = sizeof(noun) / sizeof(noun[0]);
 
  const char* verb[] = {
    "drove", "jumped", "ran", "walked", "skipped" 
  };
 
  const int verb_size = sizeof(verb) / sizeof(verb[0]);
 
  const char* preposition[] = {
    "to", "from", "over", "under", "on" 
  };
 
  const int preposition_size = sizeof(preposition) / sizeof(preposition[0]);
 
  const int offer_count = 10;
 
  for(int i = 0; i < offer_count; ++i){
    const int max_offer_size = 256;
    char offer[max_offer_size];
 
    sprintf(offer, "%s %s %s %s %s %s.", 
        article[Rand(article_size)], noun[Rand(noun_size)],
        verb[Rand(verb_size)], preposition[Rand(preposition_size)],
        article[Rand(article_size)], noun[Rand(noun_size)]);
 
    offer[0] = toupper(offer[0]);
 
    std::cout << offer << std::endl;    
  }
 
  return 0;
}
Результат: http://codepad.org/jd7pmN7h
1
paradox92
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 38
01.03.2010, 19:59  [ТС] #3
Огромное спасибооо!!!
P.S. Ещё раз убеждаюсь что форум что надо! Буду изучать С++
0
paradox92
0 / 0 / 0
Регистрация: 27.02.2010
Сообщений: 38
30.03.2010, 19:30  [ТС] #4
ещё как вариант:

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
#include <iostream.h>
#include <string.h>
#include <time.h>
#include <ctype.h>
#include <stdlib.h>
#include <stdio.h>
 
int main()
{
int f;
char h;
srand(time(NULL));
char *article[]={"the","a","one","some","any"};
char *noun[]={"boy","girl","dog","town","car"};
char *verb[]={"drove","jumped","ran","walked","skipped"};
char *preposition[]={"to","from","over","under","on"}; 
for (int i=0;i<=10;i++)
{
f=rand()%5;
h= toupper(article[f][0]);
cout << h;
cout<<&article[f][1]<<" ";
f=rand()%5;
cout<<noun[f]<<" ";
f=rand()%5;
cout<<verb[f]<<" ";
f=rand()%5;
cout<<preposition[f]<<" ";
f=rand()%5;
cout<<article[f]<<" ";
f=rand()%5;
cout<<noun[f]<<".\n";}
system("pause");
return 0;
}
0
Liss29
25 / 14 / 2
Регистрация: 18.11.2012
Сообщений: 539
Завершенные тесты: 1
27.02.2017, 22:08 #5
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cstring>
#include <cctype>
 
unsigned int strlen_(char* str)
{
    unsigned int index = 0;
    for(int i = 0; str[i] != '\0'; i++)
    {
        index = i;
    }
    return index - 1;
}
using namespace std;
 
int main()
{
    const char* article[] = {"the", "a", "one", "some", "any"};
    int size_article = sizeof(article) / sizeof(article[0]);
 
    const char* noun[] = {"boy", "girl", "dog", "town", "car"};
    int size_noun = sizeof(noun) / sizeof(noun[0]);
 
    const char* verb[] = {"drove", "jumped", "ran", "walked", "skipped"};
    int size_verb = sizeof(verb) / sizeof(verb[0]);
 
    const char* preposition[] = {"to", "from", "over", "on"};
    const int size_ = sizeof(preposition) / sizeof(preposition[0]);
    const char* s0[] = {" ", "."};
 
    char offer[256];
    int end_offer = 0;
 
    const int offer_count = 8;
    srand(time(0));
        strcpy(offer, article[rand() % size_article]);
        strcat(offer, s0[0]);
    for(int i = 0; i < offer_count; i++)
    {
        if(i == 0)
        {
            //strcpy(offer, article[rand() % size_article]);
            //strcat(offer, s0[0]);
            strcat(offer, noun[rand() % size_noun]);
            strcat(offer, s0[0]);
            strcat(offer, verb[rand() % size_verb]);
            strcat(offer, s0[0]);
            strcat(offer, preposition[rand() % size_]);
            strcat(offer, s0[0]);
            strcat(offer, article[rand() % size_article]);
            strcat(offer, s0[0]);
            strcat(offer, noun[rand() % size_noun]);
            strcat(offer, s0[1]);
            *(offer + 0) = (char)toupper(offer[0]);
            strcat(offer, s0[0]);
        }
        else
        {
            end_offer = strlen_(offer);
            strcat(offer, article[rand() % size_article]);
            strcat(offer, s0[0]);
            strcat(offer, noun[rand() % size_noun]);
            strcat(offer, s0[0]);
            strcat(offer, verb[rand() % size_verb]);
            strcat(offer, s0[0]);
            strcat(offer, preposition[rand() % size_]);
            strcat(offer, s0[0]);
            strcat(offer, article[rand() % size_article]);
            strcat(offer, s0[0]);
            strcat(offer, noun[rand() % size_noun]);
            strcat(offer, s0[1]);
            strcat(offer, s0[0]);
            *(offer + end_offer + 2) = (char)toupper(offer[end_offer + 2]);
        }
    }
    for(int j = 0; offer[j] != '\0'; j++)
            cout << offer[j];
    cout << endl << endl;
    system("Pause");
    return 0;
}
0
27.02.2017, 22:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2017, 22:08
Привет! Вот еще темы с ответами:

написать программу, которая выдает 20 случайных чисел - C++
написать программу, которая выдает 20 случайных чисел между 1 и 20. программа должна сохранять все недублируемые значения в массиве....

Напишите программу, которая использует шаблон функции для определения наименьшего из двух аргументов. - C++
Напишите программу, которая использует шаблон функции для определения наименьшего из двух аргументов. Проверьте программу, используя пары...

Разработать программу для создания и работы с двусвязным списком - C++
Задание: разработать программу для создания и работы с двусвязным списком , состоящим из структур. Для работы со списком создать меню со...

Напишите программу которая выводит 10 случайных чисел и распределяет их в порядке убывания. - C++
Напишите программу которая выводит 10 случайных чисел и распределяет их в порядке убывания.


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.