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

Замена всех "не букв" на их 8-ое представление - C++

Восстановить пароль Регистрация
 
Archy23
0 / 0 / 0
Регистрация: 09.11.2009
Сообщений: 29
28.02.2010, 11:38     Замена всех "не букв" на их 8-ое представление #1
Помогите с программой.
Замены всех не букв во вводимой строке на их восьмеричное представление и вывода результата.

есть похожая программа, там ..замена всех заглавных букв на их 8-ое представление..
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <conio.h>
 
using namespace std;
void main()
{
    char cInputString[100];
    int i;
    cout << "enter string" << endl;
    cin.getline (cInputString, 100, '/n');
      for (i=0; cInputString[i] !='/0'; i++)
        {if ((cInputString[i] >='A')&&(cInputString[i] <='Z')) printf ("/0", cInputString[i]);
          else printf ("%c", cInputString);
        }
    cout << '/n';
    getch;
}
Но вроде из неё не сделаешь которую необходимо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.02.2010, 11:38     Замена всех "не букв" на их 8-ое представление
Посмотрите здесь:

26. Подсчитать количество букв "А" в предложении и общее количество букв. В тексте несколько строк. C++
Базы данных и архитектура "Документ-представление" C++
C++ Подсчитать в строке, содержащей арифметическое выражение, количество используемых цифр и букв, заменить "+" на "-", подсчитать количество действий
C++ работа со строкой: как заменить сочетание букв "л*г" на "лаг"
Перебрать все слова длиной не более n, составленные из букв "а" и "b" C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Aye Aye
 Аватар для Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
28.02.2010, 16:36     Замена всех "не букв" на их 8-ое представление #2
еще как сделаешь
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <string.h>
#include <conio.h>
 
using namespace std;
int main()
{
        char cInputString[100];
        int i;
        cout << "enter string" << endl;
        cin.getline (cInputString, 100, '\n');
          for (i=0; cInputString[i] !='\0'; i++)
            {if (!(tolower(cInputString[i]) >='a')&&(tolower(cInputString[i]) <='z')) printf ("%o", cInputString[i]);
                  else printf ("%c", cInputString[i]);
            }
        //cout << '/n';
        getch();
}
Archy23
0 / 0 / 0
Регистрация: 09.11.2009
Сообщений: 29
04.03.2010, 09:36  [ТС]     Замена всех "не букв" на их 8-ое представление #3
Спасибо, но можно как-нибудь доработать, чтоб в ответе получалось:
т.е. Вывести "\" и нужное кол-во нулей.
Изображения
 
Aye Aye
 Аватар для Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
04.03.2010, 18:29     Замена всех "не букв" на их 8-ое представление #4
смому лень, что ли? это слишьком просто
Archy23
0 / 0 / 0
Регистрация: 09.11.2009
Сообщений: 29
22.03.2010, 15:46  [ТС]     Замена всех "не букв" на их 8-ое представление #5
Цитата Сообщение от Aye Aye Посмотреть сообщение
смому лень, что ли? это слишьком просто
Не лень, просто нужно сделать как-нить красиво, но у мня не получается..
Aye Aye
 Аватар для Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
23.03.2010, 01:00     Замена всех "не букв" на их 8-ое представление #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
#include <iostream>
#include <string>
#include <conio.h>
 
using namespace std;
int main()
{
    char cInputString[100];
    int i;
    cout << "enter string" << endl;
    cin.getline (cInputString, 100, '\n');
 
    for (i=0; cInputString[i] !='\0'; i++)
    {
        if (!(tolower(cInputString[i]) >='a')&&(tolower(cInputString[i]) <='z'))
        {
            printf ("\\%o", cInputString[i]);
            cout << ((isalpha(cInputString[i+1]))?("\\"):(""));
        }
        else printf ("%c", cInputString[i]);
    }
    return 0;
}
Yandex
Объявления
23.03.2010, 01:00     Замена всех "не букв" на их 8-ое представление
Ответ Создать тему
Опции темы

Текущее время: 00:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru