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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Lerin
Сообщений: n/a
#1

Замена букв на числа и наоборот - C++

24.12.2009, 15:15. Просмотров 1461. Ответов 2
Метки нет (Все метки)

Всем привет. Помогите, пожалуйста, с такой задачей:

1. С клавиатуры вводится текст на английском. Программа должна каждую букву заменить на ее порядковый номер и вывести получившиеся числа числа через пробелы, а пробелы в исходном тексте заменяются на нули. (Вводим "hello world", получаем 8 5 12 12 15 0 23 15 18 12 4)
2. С клавиатуры вводится числовая последовательность (числа от 0 до 26), программа должна каждое число заменить на соответствующую ей букву, а 0 - на пробел. (Вводим 8 5 12 12 15 0 23 15 18 12 4, получаем "hello world")

Желательно, чтобы это было реализовано в одной программе. Сам я язык знаю на очень плохом уровне (можно сказать, почти не знаю), поэтому обращаюсь к вам за помощью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2009, 15:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Замена букв на числа и наоборот (C++):

Замена строчных букв прописными и наоборот - C++
Очень нужен код. Прога делается в Qt SDK by Nokia v2009.03 (open source) Замена выполняется в файле, как латиница, так и русские буквы....

Замена букв в предложении. Не работает замена кириллицы - C++
Суть программы заменить все определенные буквы в предложении на другую. Собственно, вот код. Латиницу заменяет как надо. Но если ввести...

Перевод заглавных букв в строчные и наоборот - C++
Доброго времени суток. Помогите: у меня есть строка, нужно написать две функции, которая переводит все символы этой строки в lowercase,...

Замена букв в строке на сочетание букв - C++
Здравствуйте. Дана задача: дана строка которая содержит определенный текст который вводится с клавиатуры, в этом тексте необходимо...

Расшифровать сообщение: поменять порядок букв в слове наоборот - C++
Дан массив символов, содержащий текст. Слова зашифрованы – каждое из них записано наоборот. Расшифровать сообщение.

Напишите программу замены в тексте всех букв «а» на «о» и наоборот с учетом регистра. Выведите исходные и преобразованный тексты. - C++
Напишите программу замены в тексте всех букв «а» на «о» и наоборот с учетом регистра. Выведите исходные и преобразованный тексты.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
easybudda
Модератор
Эксперт CЭксперт С++
9627 / 5575 / 947
Регистрация: 25.07.2009
Сообщений: 10,710
24.12.2009, 18:15 #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
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
    
/* 
    каждую букву заменить на ее порядковый номер и вывести получившиеся числа 
    через пробелы, а пробелы в исходном тексте заменяются на нули   
*/
int main(void){
    char instr[BUFSIZ], *p;
    int action, stop, val;
    
    stop = 0;
    while ( !stop ){
        printf("\n1 - char to int; 2 - int to char; 3 - exit\n> ");
        if ( scanf("%d%*c", &action) != 1 ){
            fprintf(stderr, "Error while getting number!\n");
            exit(1);
        }
        switch ( action ){
            case 1 :
                printf("String: ");
                if ( !fgets(instr, BUFSIZ, stdin) ){
                    fprintf(stderr, "Can't get string!\n");
                    exit(1);
                }
                if ( p = strrchr(instr, '\n') )
                    *p = '\0';
                if ( !*instr ){
                    fprintf(stderr, "Empty strings not allowed\n");
                    exit(1);
                }
                for ( p = instr; *p; ++p ){
                    if ( *p >= 'a' && *p <= 'z' )
                        printf("%d ", *p - 'a' + 1);
                    else if ( *p >= 'A' && *p <= 'Z' )
                        printf("%d ", *p - 'A' + 1);
                    else if ( *p == ' ' )
                        printf("%d ", 0);
                }
                printf("\n");
                break;
            case 2 :
                printf("Numbers: ");
                if ( !fgets(instr, BUFSIZ, stdin) ){
                    fprintf(stderr, "Can't get string!\n");
                    exit(1);
                }
                if ( p = strrchr(instr, '\n') )
                    *p = '\0';
                if ( !*instr ){
                    fprintf(stderr, "Empty strings not allowed\n");
                    exit(1);
                }
                for ( p = strtok(instr, " "); p != NULL; p = strtok(NULL, " ") ){
                    val = atoi(p);
                    printf("%c", ( val ) ? (val - 1 + 'a') : ' ');
                }
                printf("\n");
                break;
            case 3 :
                stop = 1;
                break;
            default :
                printf("Wrong command!\n");
                break;
        }
    }
    exit(0);
}
2
darude
0 / 0 / 0
Регистрация: 08.04.2009
Сообщений: 9
19.05.2011, 09:39 #3
Спасибо за прогу)))) а где нужно поменять код чтобы за место цифр выводилсь буквы по принципу:
A на Z, B на Y и так далее(то есть заменяет 1-ые символы на 1-ые но только с конца)?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2011, 09:39
Привет! Вот еще темы с ответами:

Дана строка латинских букв. После заглавной буквы поставить вставить эту же прописную букву и наоборот - C++
Дана строка латинских букв. После заглавной буквы поставить вставить эту же прописную букву и наоборот. Добавлено через 1 час 11 минут...

Напишите программу подсчета суммарного числа букв 'а' и букв 'b' в данной строковой переменной - C++
Напишите программу подсчета суммарного числа букв 'а' и букв 'b' в данной строковой переменной. Вывести на экран каких букв больше. ...

Символам отвечают числа и наоборот - C++
Здравствуйте. У меня такая задача: символам отвечают числа, например A=0, B=1, C=2, ..., Z=25. нужно сделать так что б когда есть число...

Перевод числа из двоичной в десятичную и наоборот. - C++
Помогите пожалуйста написать прогу перевода числа из двоичной системы счисления в десятичную и наоборот на языке &quot;C&quot;.Я в этом...


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

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

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