Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
143 / 112 / 36
Регистрация: 14.04.2011
Сообщений: 261
1

Новая строка

09.06.2011, 23:43. Показов 3128. Ответов 8
Метки нет (Все метки)

Очень глупый вопрос) Куда влепить "\n", чтобы всегда вводить новые символы с новой строки? И чтобы результат был в виде одной строки, а не символ на строку.

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>
using namespace std;
 
main () {
 
unsigned char ascii;
int change = 0;
 
 for( ; ; ) {
 
       do {
 
    cin >> ascii;
 
    if (ascii >= 65 && ascii <= 90) {
      ascii += 32;
      cout << ascii;
      change++; }
 
    else if (ascii >= 97 && ascii <= 122) {
      ascii -= 32;
      cout << ascii;
      change++; }
 
       } while(ascii != '.');
 
   if(ascii == '.') {
     cout << "Change = "
      << change
      << "\n";
     break;     }
 
               }
 
return 0; }
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.06.2011, 23:43
Ответы с готовыми решениями:

С ++ разделяющий пробел и новая строка
С ++ разделяющий пробел и новая строка Как отличить при считывании из файла чисел Допустим 3...

Программа которая подсчитывает количество символов: пробел, табуляция, новая строка
Написать программу, которая подсчитывает количество символов: пробел, табуляция, новый рядок.Текст...

Сформировать матрицу: первая строка - произвольные числа, вторая строка - квадраты этих чисел, третья строка - кубы
Кто сможет помочь в написании программы по вот этому заданию, буду очень признателен кто окажет мне...

Дана строка. Подсчитать сколько раз первая строка входит во вторую
Дана строка. Подсчитать сколько раз первая строка входит во вторую. Например: вводим &quot;при&quot; (строка...

8
Linux-оид
118 / 67 / 9
Регистрация: 15.02.2011
Сообщений: 374
10.06.2011, 02:31 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
#include <iostream>
 
using namespace std;
 
int main(){
    unsigned char ascii;
    int change = 0;
 
    while(true){
       do{
            cin >> ascii;
            if (ascii >= 65 && ascii <= 90){
                ascii += 32;
                cout<<ascii;
                change++;
            }
            else if(ascii >= 97 && ascii <= 122){
                ascii -= 32;
                cout<<ascii;
                change++;
            }
        }while(ascii != '.');
        cout<<"\n";
        if(ascii == '.') {
            cout<<"Change = "<<change;
            break;
        }
    }
 
    return 0;
}
0
Миниатюры
Новая строка  
143 / 112 / 36
Регистрация: 14.04.2011
Сообщений: 261
10.06.2011, 13:23  [ТС] 3
OLLEGATOR, спасибо) но ничего не изменилось. После первого раза, результат выводится на новую строку как и у меня, но все последующие разы новые символы нужно вводить в одну строку с прошлым результатом. А хотелось бы так ввод данных - результат - ввод данных с новой строки
0
Изображения
 
22 / 21 / 8
Регистрация: 09.06.2011
Сообщений: 76
10.06.2011, 13:36 4
Не очень могу уловить суть задачи.

Ввод символов до '.', их вывод с новой строки. Ввод символов с новой строки...(сколько это продолжать нужно?)
0
14 / 14 / 2
Регистрация: 03.01.2011
Сообщений: 77
10.06.2011, 13:42 5
Короче.....для новой строки
cout << endl;
или
cout <<"\n";
0
143 / 112 / 36
Регистрация: 14.04.2011
Сообщений: 261
10.06.2011, 14:15  [ТС] 6
mysnk Вводим данные, нажимаем интер - происходит преобразование и инкрементируется change. Цикл по сути бесконечный, но если в входных данных будет точка, то программа завершается и выводится сколько было преобразований т.е. change

zheleznyak_oleg Это понятно Но куда именно в цикл засунуть?

Думаю с goto поэкспериментировать, сейчас примерно так представляю

C++
1
2
3
4
5
goto test; // в if и else if
test: 
      cout << "\n"; goto begin; // вне for(; ;)
begin:
        for( ; ; ) // на начало
метка в метке допустима?)
0
22 / 21 / 8
Регистрация: 09.06.2011
Сообщений: 76
10.06.2011, 14:56 7
GoTo лучше вообще нигде не использовать. Следует избегать операторов безусловного перехода.

Вот набросал решение твоей задачки.

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
#include <iostream>
 
using namespace std;
 
int main(){
    unsigned char str[255];
        int change = 0;
    bool ExitFlag = false;
    int i;
    
    while(!ExitFlag)
    {
        cin >> str;
        for (i=0; str[i] != '\0';i++ )
        {
            if (str[i] == '.')
            {
                cout << "\nChange = " << change << '\n';
                ExitFlag = true;
                break;
            }
            if (str[i] >= 65 && str[i] <= 90)
            {
                str[i] += 32;
                                cout<<str[i];
                                change++;
            }
            else if(str[i] >= 97 && str[i] <= 122)
            {
                str[i] -= 32;
                                cout<<str[i];
                                change++;
                        }
        }
        cout<<"\n";
        }
    return 0;
}
1
143 / 112 / 36
Регистрация: 14.04.2011
Сообщений: 261
10.06.2011, 15:15  [ТС] 8
mysnk Спасибо! Теперь работа программы меня устраивает
Можно вопрос по вашему алгоритму?
Зачем вы присвоили ExitFlag = false ? Когда можно было true , а в "точке" присвоить false. Не пришлось бы лишний ! в while писать
0
22 / 21 / 8
Регистрация: 09.06.2011
Сообщений: 76
10.06.2011, 15:24 9
Конечно можно, но когда видишь имя ExitFlag, первая ассоциация, что это флаг выхода. Значит когда он true - выходим.

Все для облегчения чтения кода. Не всегда только для себя пишешь.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.06.2011, 15:24

Строка: Определить, является ли строка симметричной, а может она - палиндром...
Пожалуйста

Дана строка символов. Проверьте,является ли данная строка палиндромом
Парни нужна помощь,нужен код решения этой задачи на языке с++. Дана строка символов....

Почему строка, считанная из файла и такая же строка в программе не равны, хотя они, вроде бы, одинаковы?
Есть две строки. MSK=&quot;Москва&quot; и from, считанная из текстовика, через getline Для проверки...

дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка должна вводиться с клавиатуры.
Будьте добры,помогите с решением задачи: дана строка, изображающая целое положительное число....


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

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

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