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

Tolower для русских букв - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сравнить число и строку http://www.cyberforum.ru/cpp-beginners/thread1170751.html
Помогите! using namespace std; string s; s=Edit1->Text.t_str(); int x; if( s == x) { ShowMessage(" вы ввели чило "); }
C++ Error C2361: пропуск инициализации "Height" из-за метки "default" Добрый день! Решила чуть изменить типичный код из учебника - и тут же появилась ошибка компилятора. Код вот такой: #include <iostream> using namespace std; const double Pi = 3.14159; double Volume (double Radius) { return (4*Pi*Radius*Radius*Radius)/3; http://www.cyberforum.ru/cpp-beginners/thread1170739.html
Явное создание экземпляра класса и явная специализация шаблона класса C++
Всем добрый день! Не могу разобраться - эти две технологии дают один и тот же результат? В каких случаях применять одно и другое? Растолкуйте, плз!
C++ Задача на массивы и сумму
Вопрос по условию задачи (с самим решением проблем нет) Даны массивы l1, ... , l15 ; m1, ... , m8 . Определить \huge {C}_{i}=\frac{\sum_{i=1}^{15}\left({l}_{i}-{m}_{1} \right)}{{l}_{i}} Разве может один и тот же индекс і использоваться и как параметр внешнего цикла (как индекс элемента массива), и как параметр внутренней суммы. Ведь это же абсурд! Я считаю, что параметром (счетчиком) суммы...
C++ Поиск и замена файла http://www.cyberforum.ru/cpp-beginners/thread1170689.html
Здравствуйте! Никак не могу реализовать функцию для своей программы. Функция производит проверяет наличие файла(ов) в первом заданном каталоге и затем ищет его(их) во втором каталоге - если есть, то производит замену. Если не сложно, пожалуйста, помогите
C++ Оболочка для программы Вот пишу программу на с++ и интересует, как создать графическую оболочку для программы? Надо сделать окошко для ввода текста двух переменных и кнопку запустить и как вывести? С этим никогда не связывался, а сейчас вот понадобилось. Благодарю за помощь. Среда написания программы visual studio 2012 подробнее

Показать сообщение отдельно
Dragon.007
 Аватар для Dragon.007
3 / 3 / 0
Регистрация: 06.04.2012
Сообщений: 29
09.05.2014, 14:18     Tolower для русских букв
Есть символьный массив с русскими буквами: "Сегодня Прекрасная Погода". Мне нужно заглавные буквы изменить с верхнего регистра на нижний. функция tolower почему-то не работает..
Хотя на другом коде всё прекрасно с русскими буквами..

Вот собственно код, если нужно.
Кликните здесь для просмотра всего текста
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
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <ctype.h>
#include <stdio.h>
#include <locale.h>
void main()
{
setlocale(LC_ALL, "Russian_Russia.1251");
clrscr();
char str[52]="Сегодня прекрасный солнечный день! Пошли купаться?", str2[51], buf=0;
char alf[33]="абвгдежзийклмнопростуфхцчшщъыьэюя", alf2[33]="гдойбжвтуфпэсашезюрщкцьимылчхянъ"; 
int prov[26]={0},k=0;
 
  for (int i=0; i<51; i++)
  {if(ispunct(str[i]) || str[i]==' ') {str2[i]=str[i];continue;}
   buf=str[i];
   buf=tolower(buf);
   for (int j=0; j<32; j++)
     if(buf==alf[j])
     {str2[i]=alf2[j]; break;}
  }
for(i=0; i<50; i++)
  cout<<str[i];
cout<<"\n";
for(i=0; i<50; i++)
  cout<<str2[i];
 
 
float s=0,k2, n=44;
for (i=0; i<32; i++) 
{for(int j=0; j<n; j++) 
if (alf[i]==str2[j]) k2++; 
s+=(k2*(k2-1))/(n*(n-1)); 
k2=0;} 
 
cout<<"\nsumma = "<<s;
getch();
return;
}


Компилируется он так:
Tolower для русских букв

И еще... Почему-то пропадает также буква "я", но это скорее всего я где-то не доглядела.
_______________________________________________________________________
По повод буквы "я" исправила. Вопрос про регистр все еще в силе
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru