Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
paradox92
0 / 0 / 1
Регистрация: 27.02.2010
Сообщений: 38
#1

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

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

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

Задание такое: "Разработать программу, которая использует генерацию случайных чисел для создания предложений".
Подробности: 1. использовать 4 массива-указателя (char) с названиями: "article" "noun" "verb" "preposition"
http://www.cyberforum.ru/cpp-beginners/thread2267388.html
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, что вводит пользователь.
Напишите программу, которая использует функцию для вычисления среднего...

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

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

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

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

4
CyBOSSeR
Эксперт С++
2309 / 1682 / 148
Регистрация: 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 / 1
Регистрация: 27.02.2010
Сообщений: 38
01.03.2010, 19:59  [ТС] #3
Огромное спасибооо!!!
P.S. Ещё раз убеждаюсь что форум что надо! Буду изучать С++
0
paradox92
0 / 0 / 1
Регистрация: 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 / 4
Регистрация: 18.11.2012
Сообщений: 566
Завершенные тесты: 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 случайных чисел
написать программу, которая выдает 20 случайных чисел между 1 и 20. программа...

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

Создать программу, которая находит индекс числа в массиве случайных чисел
Пожалуйста помогите решить задачу)) создать программу, которая находит индекс...


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

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

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