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

Если символ — большая латинская буква, то заменить в нем 3-й бит нулем - C++

Восстановить пароль Регистрация
 
Tokez
-3 / 1 / 0
Регистрация: 25.04.2011
Сообщений: 20
11.06.2011, 21:39     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #1
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <cctype>
#include "math.h"
#include "stdio.h"
using namespace std;
       void main()
{
    setlocale(0,"Rus");
    char a[8] = 'b';
    int b = (int)a[8];
    cout<<b;
    cout<<"Введите последовательность из 8 букв"<<"\n";
    for (int i = 0; i < 8; i++)
    {
        cin>>a[i];
    }
        for (int i = 0; i < 8; i++)
        switch (a[i])
    {
        case 'A':a[i] = a[i] | 4; break;
        case 'B':a[i] = a[i] | 4; break;
        case 'C':a[i] = a[i] | 4; break;
        case 'D':a[i] = a[i] | 4; break;
        case 'E':a[i] = a[i] | 4; break;
        case 'F':a[i] = a[i] | 4; break;
        case 'G':a[i] = a[i] | 4; break;
        case 'H':a[i] = a[i] | 4; break;
        case 'I':a[i] = a[i] | 4; break;
        case 'J':a[i] = a[i] | 4; break;
        case 'K':a[i] = a[i] | 4; break;
        case 'L':a[i] = a[i] | 4; break;
        case 'M':a[i] = a[i] | 4; break;
        case 'N':a[i] = a[i] | 4; break;
        case 'O':a[i] = a[i] | 4; break;
        case 'P':a[i] = a[i] | 4; break;
        case 'Q':a[i] = a[i] | 4; break;
        case 'R':a[i] = a[i] | 4; break;
        case 'S':a[i] = a[i] | 4; break;
        case 'T':a[i] = a[i] | 4; break;
        case 'U':a[i] = a[i] | 4; break;
        case 'V':a[i] = a[i] | 4; break;
        case 'W':a[i] = a[i] | 4; break;
        case 'X':a[i] = a[i] | 4; break;
        case 'Y':a[i] = a[i] | 4; break;
        case 'Z':a[i] = a[i] | 4; break;
        default: a[i] = a[i] | 1;   
    }
        for (int i = 0; i < 8; i++)
    {
        cout<<a[i]<<"  ";
        cout << oct << a[i] << endl;
    }
            getch ();
 
}
 Комментарий модератора 
Используйте теги форматирования кода!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2011, 21:39     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем
Посмотрите здесь:

C++ Заменить в каждой строке файла элементы с наибольшим значением нулем
Как лучше написать программу если она большая? C++
Текст из 0 и 1. Оставив 1-ый символ в как есть, заменить каждый следующий на 0, если не совпадает с рассматриваемым C++
C++ Заменить первое число нулем, если оно меньше или равно второму
Посчитать сколько раз встречается латинская буква "а" в первом и последнем столбце массива C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
tylix
68 / 55 / 6
Регистрация: 10.06.2011
Сообщений: 149
11.06.2011, 21:59     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #2
Что-то я не вьеду в суть вопроса
Tokez
-3 / 1 / 0
Регистрация: 25.04.2011
Сообщений: 20
11.06.2011, 23:18  [ТС]     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #3
Цитата Сообщение от tylix Посмотреть сообщение
Что-то я не вьеду в суть вопроса
нужно чтоб он выводил числа а не буквы!!!!
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
11.06.2011, 23:47     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #4
А слабо полное задание сюда выложить? В том виде, в каком его выдали, а не вольный пересказ, проиллюстрированный индусским кодом

P.S. Никого не хотел обидеть. Ни ТС, ни индусов.
Tokez
-3 / 1 / 0
Регистрация: 25.04.2011
Сообщений: 20
11.06.2011, 23:51  [ТС]     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #5
Цитата Сообщение от grizlik78 Посмотреть сообщение
А слабо полное задание сюда выложить? В том виде, в каком его выдали, а не вольный пересказ, проиллюстрированный индусским кодом

P.S. Никого не хотел обидеть. Ни ТС, ни индусов.
Ввести последовательность из 8 символов. Если символ - большая латинская буква, то заменить в нем 3-й бит нулем, иначе - заменить младший бит единицей.
Вывести исходную и преобразованную последовательности в символьной и восьмеричной формах.

"прога которую я написал, там все правильно работает просто надо ее в восьмеричной форме представить!"
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
11.06.2011, 23:54     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #6
Прогу? Или всё-таки коды символов?

Добавлено через 1 минуту
И, кстати, нулём там третий бит не заменяется. Единицей заменяется.
Tokez
-3 / 1 / 0
Регистрация: 25.04.2011
Сообщений: 20
11.06.2011, 23:54  [ТС]     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #7
Цитата Сообщение от grizlik78 Посмотреть сообщение
Прогу? Или всё-таки коды символов?
у меня там через char, вот char надо перевести на int!
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
11.06.2011, 23:55     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #8
C++
1
cout << oct << int(a[i]) << endl;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.06.2011, 00:07     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем
Еще ссылки по теме:

C++ Что значит большая буква Е и как она работает в программе ?
Заменить максимальный по модулю отрицательный элемент нулем. Перевод в С++ C++
В четных столбцах матрицы заменить минимальный элемент нулем C++

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

Или воспользуйтесь поиском по форуму:
Tokez
-3 / 1 / 0
Регистрация: 25.04.2011
Сообщений: 20
12.06.2011, 00:07  [ТС]     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем #9
Цитата Сообщение от grizlik78 Посмотреть сообщение
C++
1
cout << oct << int(a[i]) << endl;
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <cctype>
#include "math.h"
#include "stdio.h"
using namespace std;
       void main()
{
        setlocale(0,"Rus");
        char a[8];
        cout<<"Введите последовательность из 8 букв"<<"\n";
        
 
        for (int i = 0; i < 8; i++)
 
        {
                cin>>a[i];
        }
                for (int i = 0; i < 8; i++)
                switch (a[i])
        {
                case 'A':a[i] = a[i] | 4; break;
                case 'B':a[i] = a[i] | 4; break;
                case 'C':a[i] = a[i] | 4; break;
                case 'D':a[i] = a[i] | 4; break;
                case 'E':a[i] = a[i] | 4; break;
                case 'F':a[i] = a[i] | 4; break;
                case 'G':a[i] = a[i] | 4; break;
                case 'H':a[i] = a[i] | 4; break;
                case 'I':a[i] = a[i] | 4; break;
                case 'J':a[i] = a[i] | 4; break;
                case 'K':a[i] = a[i] | 4; break;
                case 'L':a[i] = a[i] | 4; break;
                case 'M':a[i] = a[i] | 4; break;
                case 'N':a[i] = a[i] | 4; break;
                case 'O':a[i] = a[i] | 4; break;
                case 'P':a[i] = a[i] | 4; break;
                case 'Q':a[i] = a[i] | 4; break;
                case 'R':a[i] = a[i] | 4; break;
                case 'S':a[i] = a[i] | 4; break;
                case 'T':a[i] = a[i] | 4; break;
                case 'U':a[i] = a[i] | 4; break;
                case 'V':a[i] = a[i] | 4; break;
                case 'W':a[i] = a[i] | 4; break;
                case 'X':a[i] = a[i] | 4; break;
                case 'Y':a[i] = a[i] | 4; break;
                case 'Z':a[i] = a[i] | 4; break;
                default: a[i] = a[i] | 1;       
        }
                for (int i = 0; i < 8; i++)
        {
            cout << oct << int(a[i]) << endl;
            cout<<a[i]<<"  ";
                cout << oct << a[i] << endl;
        }
                        getch ();
 
}
посмотри он с Е выводит!

Добавлено через 3 минуты
Цитата Сообщение от grizlik78 Посмотреть сообщение
C++
1
cout << oct << int(a[i]) << endl;
все спасибо вам большое разобрался!!!!!!!

 Комментарий модератора 
Теги форматирования! Последнее предупреждение.
Yandex
Объявления
12.06.2011, 00:07     Если символ — большая латинская буква, то заменить в нем 3-й бит нулем
Ответ Создать тему
Опции темы

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