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

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

Войти
Регистрация
Восстановить пароль
 
Наська_91
0 / 0 / 0
Регистрация: 15.01.2011
Сообщений: 12
#1

СИМВОЛЫ - C++

15.01.2011, 22:54. Просмотров 458. Ответов 6
Метки нет (Все метки)

Вводится последовательность символов пока не встретится символ ".". Подсчитать каких символов больше "а" или "о".
* Без масивов...
Я делаю вот так
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
# include <iostream> 
using namespace std;
int main()
{
    /*Вводиться послiдовнiсть символiв поки не зустрiнеться символ ’.’. 
    Встановити яких символiв введено більше ’a’ чи ’o’.*/
    int i=0, kilkist_a=0, kilkist_o=0; char simvol=0;
    while (i<100)
    {
        cout<<"Enter simvol: ";
        cin>>simvol;
        if (simvol='a')
        {
            kilkist_a=kilkist_a+1;
        }
        if (simvol='o')
        {
            kilkist_o=kilkist_o+1;
        }
        if (simvol='.')
        {
            break;
        }
        i++;
    } 
    if (kilkist_o>kilkist_a)
    {
        cout<<"Sumvoliv 'o' bilshe"<<endl;
    } else
    {
        cout<<"Sumvoliv 'a' bilshe"<<endl;
    }
    return 0;
}
Прога выводит результат после ввода первого символа...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2011, 22:54     СИМВОЛЫ
Посмотрите здесь:

Широкие символы wchar_t wstring не хотят принимать русские символы - C++
Собственно вопрос в шапке, вот примеры: std::wstring str = L&quot;блин комом&quot;; и такое: wchar_t stroka = L&quot;abcdefghijklmnopqrstuvwxyz...

Вывести на экран в первой строке нечетные символы, во второй четные символы исходной строки - C++
Помогите написать 3 программы. (на С или С++) 1. Вывести на экран в первой строке нечетные символы, во второй четные символы исходной...

Алфавит. Символы операций. Специальные символы - C++
Алфавит. Символы операций. Специальные символы. Один из вопросов билета, предстоящего мне экзамена. 1.Не могу найти в чем разница...

Дан файл, компонентами которого являются символы. Переписать все символы в новый файл в обратном порядке. - C++
Работа с текстовыми файлами. Дан файл, компонентами которого являются символы. Переписать все символы в новый файл в обратном порядке.

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

Даны целое число n и символы s1,s2,.sn , среди которых есть двоеточие. Получить все символы после двоеточия - Pascal
Задачка вроде понятная и я её даже решил,но я взял в основу строковый тип.Как в последствии выяснилось нужно решать через &quot;char&quot;. Не могу...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
15.01.2011, 22:58     СИМВОЛЫ #2
Наська_91, так вы вводите не строку, а одни символ!!!!
Наська_91
0 / 0 / 0
Регистрация: 15.01.2011
Сообщений: 12
15.01.2011, 23:01  [ТС]     СИМВОЛЫ #3
в том и прикол, что тип string нам не объясняли... и нужно сделать через тип char
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
15.01.2011, 23:04     СИМВОЛЫ #4
Цитата Сообщение от Наська_91 Посмотреть сообщение
в том и прикол, что тип string нам не объясняли... и нужно сделать через тип char
Ну тогда, незнаю как без массивов, ведь строка ето и есть массив символов(если не учитывать string)!!!!
Наська_91
0 / 0 / 0
Регистрация: 15.01.2011
Сообщений: 12
15.01.2011, 23:09  [ТС]     СИМВОЛЫ #5
MILAN, вот я тоже не знаю... уже третий день парюсь...
x1Mike7x
216 / 129 / 6
Регистрация: 06.11.2010
Сообщений: 234
16.01.2011, 03:17     СИМВОЛЫ #6
Выдает результат после первого ввода символа, потому что вот эта строка
C++
1
if (simvol='.')
возвращает условие true. Вместо одного "=" должно быть два, потому что это сравнение, а не присваивание.
По задаче - ввод символов должен осуществляться как строка или допускается "ентерить" после каждого символа? Если первый вариант, то без стринга/массива чаров не обойтись, а если 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
#include <iostream>
 
using namespace std;
 
int main()
{
    int kilkist_a=0, kilkist_o=0;
    char c;
 
    cout<<"Nu scho, po4inay vvodutu sumvolu!"<<endl;
    while (17==17)
    {
        cin>>c;
        if (c=='.')
            break;
        if ( (c=='a') || (c=='A') )
            kilkist_a++;
        if ( (c=='o') || (c=='O') )
            kilkist_o++;
    };
    if (kilkist_a>kilkist_o)
        cout<<endl<<"Sumvoliv 'A' bilwe"<<endl;
    else if (kilkist_a<kilkist_o)
        cout<<endl<<"Sumvoliv 'O' bilwe"<<endl;
    else
        cout<<endl<<"Sumvoliv 'O' ta 'A' odnakova kilkist"<<endl;
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2011, 14:54     СИМВОЛЫ
Еще ссылки по теме:

Вставка в бд, символы перевода строк и спец. символы - PHP
Вставляю в бд даные, текст. Он вставляется просто как строка, а я его вставляю как отформатироваанный текст, как мне его вставить, чтобы...

Дан текст, в который входят любые символы. Удалить из него все символы не являющиеся буквами или цифрами - Pascal
Дан текст, в который входят любые символы. Удалить из него все символы не являющиеся буквами или цифрами Помогите пожалуйста)))

символы '#$D#$A' - в строке. Отображаются как перенос строки. Нужно убрать. Не дают перейти по ссылке в которой есть эти символы - Delphi
символы '#$D#$A' - в строке. Отображаются как перенос строки. Нужно убрать. Не дают перейти по ссылке в которой есть эти символы

Даны две символьные переменные, в которых все символы, кроме одного, одинаковы. Определить номер позиции, в которй символы отличаются - Pascal
Ребят помогите решить задачи Задание 3 Даны две символьные переменные, по 4 символа каждая, в которых все символы, кроме одного,...


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

Или воспользуйтесь поиском по форуму:
pupanya
4 / 4 / 2
Регистрация: 11.11.2010
Сообщений: 55
Завершенные тесты: 1
24.01.2011, 14:54     СИМВОЛЫ #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
#include <iostream.h>
#include <conio.h>
main()
{
    const int n=100;
    char a[n];
    int b,qa=0, qo=0;
    cout<<"Vvedite text"<<endl;
    cin.getline(a,n+1);
    b=strlen(a);
    for(int i=0;i<=b;i++)
        {
            if(a[i]=='a')
                qa++;
            if(a[i]=='o')
                qo++;
            if(a[i]=='.')
                break;
        }
    if(qa>qo)
        cout<<"a simvolov preobladaet"<<endl;
    else if(qa<qo)
        cout<<"o simvolov preobladaet"<<endl;
        else
        cout<<"simvolov a i o ravnoe kolichestvo"<<endl;
    getch();
}
Yandex
Объявления
24.01.2011, 14:54     СИМВОЛЫ
Ответ Создать тему
Опции темы

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