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

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

Войти
Регистрация
Восстановить пароль
 
zaqwerty
2 / 2 / 1
Регистрация: 14.12.2013
Сообщений: 113
#1

Описание функции toascii - C++

18.03.2014, 17:12. Просмотров 553. Ответов 5
Метки нет (Все метки)

Здравствуйте. У меня имеются вопросы по следующему фрагменту программы:
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
while((m=fgetc(fin))!=EOF)
          {m=toascii(m);
         if((m>=65) && (m<=90)) k[m]++;  
         if((m>=192) && (m<=223)) k[m]++;
         if(m==168) k[m]++;
          }      
        for(i=0;i<N;i++)
                if(k[i]!=0)  
                fprintf(flip,"%c       -      %d \n",i,k[i]); 
        fprintf(flip,"______\n");
        fprintf(flip,"*");
          fclose(fin);
           fclose(flip);
          fin=fopen("input.txt","r");
        
          flip=fopen("half.txt","a");      
          while((m=fgetc(fin))!=EOF)
          {
          //кодирование
           m++;  
               fputc(m,flip);
          }         
        printf("данные записаны в half.txt");
        fclose(fin);
        fclose(flip);
 
        getch();
        };
А именно меня интересует следующее:
C++
1
2
3
4
5
{m=toascii(m);
         if((m>=65) && (m<=90)) k[m]++;  
         if((m>=192) && (m<=223)) k[m]++;
         if(m==168) k[m]++;
          }
Я понимаю, что функция toascii кодирует символы согласно ASCII, но почему в условии должны стоять именно (m>=65) && (m<=90)? И все остальные цифры в условии... Почему они должны быть именно такими? Я пробовал их изменять. В итоге программа неправильно подсчитывает количество букв, да и вообще буквы не определяет. Запутался именно на этом.
Очень надеюсь на вашу помощь
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2014, 17:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Описание функции toascii (C++):

описание функции - C++
пожалуйста помогите с описанием функции и прокомментируйте если не трудно!!!Обращаюсь к вам друзья!!! аor (s=0, sn = X, n = 1; fabs(sn) &gt;...

описание функции - C++
Описать функцию mmax(x,y), которая присваивает первому парамтру большее,а второму - меньшее из значений x и y.Используя эту...

Описание функции - C++
Помогите написать код функции!? Задача: Программа. Описать функцию f (s, n, x), определяющую, какой символ чаще других встречается в...

Описание функции - C++
Доброго времени суток! Начал учить с++, добрался до функций, нашел тут задачку на описание функции...Немного не понимаю метода решения и...

Описание функции - C++
Описание функции состоит из?

Описание функции istringstream - C++
Добрый день, есть такая конструкция istringstream ist(target); while(ist&gt;&gt;cur) { word=cur;Фрагмент взят из проги по замене одного...

5
Borjch
10 / 10 / 3
Регистрация: 09.01.2014
Сообщений: 29
18.03.2014, 17:20 #2
65-90 коды букв английского алфавита в верхнем регистре, 192-223 русского. То есть, здесь вы проверяете, является ли символ с кодом m большой буквой.
1
jurok_85
241 / 225 / 78
Регистрация: 21.02.2013
Сообщений: 520
Завершенные тесты: 1
18.03.2014, 17:21 #3
ну с 65 до 90 это английский алфавит заглавными буквами
1
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
18.03.2014, 17:29 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
zaqwerty, раз уж Вы про ASCII упоминаете, так и посмотрите, что же это такое хотя бы.
http://ru.wikipedia.org/wiki/ASCII
65-90 коды прописных латинских букв от A до Z.

Добавлено через 7 минут
Вообще, конечно, интересно в какой ситуации удастся получить из toascii() значение, превышающее 127.
1
zaqwerty
2 / 2 / 1
Регистрация: 14.12.2013
Сообщений: 113
19.03.2014, 05:20  [ТС] #5
Tulosba, jurok_85, Borjch, спасибо большое! Можете так же подсказать, что делает эта часть программы?
C++
1
2
3
4
while((m=fgetc(f1))!=EOF)
{m++;
fputc(m, f2);
}
0
alsav22
5426 / 4821 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.03.2014, 05:40 #6
Цитата Сообщение от zaqwerty Посмотреть сообщение
что делает эта часть программы?
Читает из файла f1 символы (пока не EOF), увеличивает код каждого символа на единицу, записывает этот символ в f2 файл.
1
19.03.2014, 05:40
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2014, 05:40
Привет! Вот еще темы с ответами:

Описание функции ungetch() - C++
Привет всем! Такой вопрос, я наткнулся на функцию ungetch(с), прочитал описание &quot;возвращает символ в буфер&quot; но я не могу понять, как же она...

Описание функции getopt - C++
Распишите описание функции getopt и её использование с ключами.

Функции , описание к действием. - C++
Вот вообще сам код по с++ но очень хочеться узнать что к чему. (если можно подробно пожайлуста что к чему, чтобы разобраться.) #include...

Описание функции ltoa - C++
ltoa ( string,10) Это превращение из инт в чар. Что значит параметр 10?


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

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

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