Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
reckk
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 5
1

Составить программу, которая выводит на экран все символы, расположенные после первого символа'':''

20.11.2012, 22:02. Просмотров 2017. Ответов 4
Метки нет (Все метки)

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

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2012, 22:02
Ответы с готовыми решениями:

Получить все символы, расположенные после первого двоеточия
Даны натуральное число n и символы S1, .... Sn среди которых есть двоеточие....

Удалить все элементы файла, расположенные после первого символа пробела
Дан символьный файл, содержащий по крайней мере один символ пробела. Удалить...

Составить программу, которая при вводе символа выводит сообщение
Составить программу, которая при вводе символа "{" или "}" выводит сообщение...

Составить программу, которая выводит на экран все натуральные числа в диапазоне от 1 до n, которые являются степенью числа 2
Составил задачу которая только увеличивает на один ну тое сть...

Составить программу, которая по номеру детали выводит на экран её название.
Вот задание. Имеется пронумерованный список деталей: 1) шуруп, 2) гайка, 3)...

4
xtorne21st
интересующийся
304 / 275 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
20.11.2012, 23:30 2
Вы уверенны что вводиться именно строка, а не просто поток символов?

Добавлено через 1 час 7 минут
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
#include <stdio.h>
#define IN 1
#define OUT 0
 
int main( void )
{
    int c, cw, cl, state, blind, rule, space;
    
    cw = cl = space = 0;
    state = rule = blind = OUT;
    while( (c = getchar()) != EOF ) {
    if( c == ',' )
        blind = IN;
    else if( blind == IN && space > 1) {
        space = 0;
        blind = OUT;
    }
    if( blind == IN )
        if( c == ' ' )
        ++space;
    if( space == 2 )
        printf( "%c", c );
    if( blind == OUT && rule == IN )
        printf( "%c", c );
    
    if( c == ' ' || c == '\n' || c == '\t' ) {
        state = OUT;
    }
    else if( state == OUT && (c != ' ' || c != '\n' || c != '\t') ) {
        state = IN;
        ++cw;
    }
    if( (c == '.' || c == '!' || c == '?') && (cw % 2) ) {
        ++cl;
        cw = 0;
    }
    if( c == ':' )
        rule = IN + IN;
    if( rule == IN + IN && c == ' ' )
        rule = IN;
    }
    printf( "Количество предложений с нечётным количеством слов: %d\n", cl );
 
    return 0;
}
1
reckk
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 5
21.11.2012, 00:47  [ТС] 3
да, точно строка.

Добавлено через 9 минут
Хмм, я работаю в Dev C++, все компилируется хорошо, но оно не выводит символы.
0
xtorne21st
интересующийся
304 / 275 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
21.11.2012, 13:32 4
Если сторока, то нужно немного переделать код, основное отличае заключается в замене макроса EOF на символ конца строки:
C++
1
while( (c = getchar()) != '\n' ) { // 14 строка
Добавлено через 2 минуты
без понятия как предстоит дело с вашим компилятором... попробуйте перед return 0 поставить строчку system("pause");

Добавлено через 12 часов 13 минут
Вот ещё как вариант работы с символьными массивами:
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
/* С клавиатуры вводится строка. Составить программу,
   которая выводит на экран все символы, расположенные
   после первого символа'':'', подсчитывает количество
   предложений, содержащих нечетное количество слов,
   удаляет из текста слова, которые расположены после запятых. */
 
#include <stdio.h>
#define THOUSAND 1000
#define IN 1
#define OUT 0
 
int main( void )
{
    int c, i, j, ix, id, state, sentence, cond, iw, i_sentence;
    char text[THOUSAND]; // максимальная величина вводимых символов - 1000
    char colon[THOUSAND];
    
    state = cond = OUT;
    sentence = i_sentence = 0;
    printf( "Press <Ctrl+d> to finishing...\n\n" );
    for( i = 0; (c = getchar()) != EOF; ) {
    if ( state == IN ) {
        text[i] = c;
        ++i;
    }
    if( c == ':' )
        state = IN;
    
    if( c == '\n' ) {
        text[i] = '\0'; // символ конца файла
        i = 0;
        state = OUT;
        
        /* ****************** */
        // Условие на запятую
        for( j = 0, ix = 0; text[j] != '\0'; ++j ) {
        colon[ix] = text[j];
        ++ix;
        if( text[j] == ',' ) {
            ++j;
            while( text[j] == ' ')
            ++j;
            while( text[j+1] != ' ' && text[j+1] != '\n' && text[j+1] != '\0' )
            ++j;
        }
        if( text[j+1] == '\0' )
            colon[ix] = '\0';
        }
        
        /* ******************* */
        // подсчитаем кол-во предложений содержащих
        // нечётное кол-во слов
        
        // подсчитаем слова
        for( id = iw = 0; colon[id] != '\0'; ++id ) {
        if( colon[id] == '.' || colon[id] == '!' || colon[id] == '?' )
            sentence = OUT;
        else if( sentence == OUT ) {
            sentence = IN;
        }
        if( sentence == IN ) {
            if( colon[id] != ' '
            && (colon[id+1] == ' ' || colon[id+1] == '\t' || colon[id+1] == '\n') )
            ++iw;
        }
        else if ( sentence == OUT ) {
            if( !(iw % 2) )
            ++i_sentence;
            iw = 0;
            
        }
        }
        
        /* ******************* */
        printf( "%s", colon );
        colon[0] = '\0'; // После отображения - ликвидируем массив
    }
    }
    printf( "\nWe have %d odd sentence(s).\n", i_sentence );
    
    return 0;
}
1
reckk
0 / 0 / 0
Регистрация: 20.11.2012
Сообщений: 5
21.11.2012, 23:07  [ТС] 5
Спасибо.
0
21.11.2012, 23:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2012, 23:07

составить программу, которая выводит на экран в строку числа от 1 до 10 и подсчитывает их сумму?
Народ отзовитесь кто может помочь!А то экзамен через 7 дней! :) Заранее...

Создайте процедуру, которая выводит строку, исключая символы, расположенные на нечетных позициях
1. Создайте процедуру, которая принимает в качестве аргумента строку и выводит...

Получить все символы, расположенные до первого двоеточия
Даны натуральное число n, символы s1, s2, …, sn среди которых есть двоеточие....


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

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

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