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

Строка содержит произвольный русский текст. Проверить, каких букв в нем больше: гласных или согласных (Написано на Паскале, переделать под C++) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Из заданного текста выбрать и напечатать те символы, которые встречаются в нем ровно один раз http://www.cyberforum.ru/cpp-beginners/thread81424.html
Не могу научиться мыслить на c++. Но старательно пытаюсь.... Если бы не традиционное "Завтра сдавать" вряд ли бы и спросил. В общем задача проста: Из заданного текста выбрать и напечатать те символы, которые встречаются в нем ровно один раз (в порядке в котором они встречаются в тексте). Разобрался. int i,j,fl; char str="jhb sdjcnweofnlm wefoi-pokas lknlqkmwdqw"; for(i=0;*(str+i)!=0;i++)...
C++ Массивы2 Помогите пожалуйста!В задаче надо переделать чтоб ввод чисел в массив вводился с клавиатуры(ну типо запускаем программу а она нас спрашивает введите количество чисел массива, а потом мы их вводим с клавиатуры)Вот код:#include <iostream.h> #include <math.h> #include <conio.h> void main() { int mas = {3,5,4,3,5,8,6,7,-2,5}; int dob = 1; int i,max =... http://www.cyberforum.ru/cpp-beginners/thread81421.html
Одномерный массив C++
Приветствую всех, товарищи программисты, сессия на носу, не могу получить допуск к экзамену из-за одной оставшейся лабораторной работы. Пытался решить (попытки будут ниже), но так и не довел до ума. основная проблема в том, что наш преподаватель помешан на оптимизации кода. Собственно само задание: В массиве X определить количество элементов меньших среднего арифметического значения всех...
C++ Работа с экраном в текстовом режиме
В меню с выбором пунктов Функциональными Клавишами по программе с клавиатуры в 1-е окно вводится текст с цифрами. Во 2-м окне отображаются количество букв и количество цифр. я сделал чтоб в первом окне вводились символы..но трудность : как сделать чтоб выводилось кол-во букв и цифр. Добавлено через 2 часа 27 минут Помогите плиз
C++ Вычислить максимальный по модулю элемент массива http://www.cyberforum.ru/cpp-beginners/thread81384.html
:(помогите написать программу: в одномерном массиве, состоящем из n вещественных элементов, вычислить:1) максимальный по модулю элемент массива; 2)сумма элементов массива, расположенных между первым и вторым положительными элементами. Преобразовать массив таким образом, чтобы элементы, равные нулю, распологались после всех остальных.
C++ провал с генератором псевдослучайных чиел... вот оно:#include <iostream> #include <stdio.h> #define RAND_MAX 32767 unsigned long next = 1 ; int rand(void) { next=next*1103515245+12345; return((unsigned int)(next/65536)%32768); подробнее

Показать сообщение отдельно
Михей91
5 / 5 / 1
Регистрация: 27.12.2009
Сообщений: 69
29.12.2009, 17:38     Строка содержит произвольный русский текст. Проверить, каких букв в нем больше: гласных или согласных (Написано на Паскале, переделать под C++)
Всем доброго вечера.
Собственно само задание в заголовке.
Написана программа в Паскале, вот как на С++ ее переделать, из-за неимения большого опыта к сожалению не знаю (
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
program example1; 
const 
  glasn=['а','е','и','о','у','ы','э','ю','я']; 
   soglas=['б','в','г','д','ж','з','й','л','м',
         'н','р','к','п','с','т','ф','х','ц','ч','ш','щ'];
 var
   st: string; 
     g,s,i:integer; 
begin 
  write('Введите строку> '); readln(st); 
    g:=0; s:=0; 
      for i:= 1 to length(st) do 
        if st[i] in glasn then inc(g) else if st[i] in soglas then inc(s);
        if g> s then writeln('Гласных больше')
    else if g< s then writeln('Согласных больше')
  else writeln('Согласных и гласных букв поровну');
 readln; 
end.
Помимо всего этого нужно чтобы строка выводилась из файла (my.txt тект в файле "Привет"):
C++
1
2
3
4
5
6
7
8
ifstream file;
 
file.open("my.txt");
for (i=0; feof(file); ++i)
 {
file>> a[i];
cout<<a[i]
 };
Наверно что-то типа такого )


Еще есть код на VC++, в нем я вообще ничего не понимаю )))
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
#include <locale>
#include <iostream>
#include <string>
 
using namespace std;
 
bool isVowels(wchar_t ch)
{
 return static_cast<wstring>(L"аеёиоуыэюя").find(towlower(ch))!=wstring::npos;
}
 
int
main()
{
 locale::global(locale("rus_rus.866"));
 wcout<<L"Введите произвольную текстовую строку:"<<endl;
 wstring str;
 wcin.setf(ios::skipws);
 getline(wcin,str);
 unsigned int vowels=0,
     consonants=0;
 for(wstring::const_iterator it=str.begin();it!=str.end();it++)
 {
  if(iswalpha(*it))
  {
   if(isVowels(*it))vowels++;
   else consonants++;
  }
 }
 wcout<&l
 t;L"Гласных:"<<vowels<<endl;
 wcout<<L"Согласных:"<<consonants<<endl;
 if(vowels>consonants)wcout<<L"Гласных больше";
 else if(vowels<consonants)wcout<<L"Гласных меньше";
 else wcout<<L"Гласных и согласных поровну";
 wcout<<endl;
 system("PAUSE");
 return 0;
}
Друзья, помоги плиз... второй день уже сижу, а продвижения никакого ((((
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru