Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

10.12.2008, 10:26
|
|
Новичок
Регистрация: 01.09.2008
Сообщений: 2
Провел на форуме: 12870
Репутация:
0
|
|
нужна помощь в Delphi
как сделать так, чтобы при выделении города он показывался в статус баре (1 окно), после выделения улицы, Город не исчезал из 1 окна, а улица показывалась во 2-м окне и т.д.
скрин:
http://www.programmersforum.ru/attachment.php?attachmentid=6885&d=1227728827
|
|
|

10.12.2008, 12:57
|
|
Познающий
Регистрация: 03.07.2008
Сообщений: 65
Провел на форуме: 170237
Репутация:
4
|
|
Сообщение от jawbreaker
~NeiTRoN~
PHP код:
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
string vowels = "aeiou";
int countvowels(const string& s)
{
int res = 0;
for(int i = 0; i < s.length(); i++)
for(int j = 0; j < vowels.length(); j++)
if (s[i] == vowels[j])
res++;
return res;
}
int main()
{
string a;
cin >> a;
cout << a << "\n";
cout << countvowels(a);
cin.get();
return 0;
}
Спс=) Но мне немного другое нужно. Мне нужно не просто определить количество гласных в непрерывной строке, а в строке типа "Слово слово слово,слово"=(
|
|
|

10.12.2008, 13:03
|
|
Новичок
Регистрация: 09.12.2008
Сообщений: 3
Провел на форуме: 5714
Репутация:
0
|
|
Неужели никто не знает? Выручайте плиз. =\
|
|
|

10.12.2008, 13:18
|
|
Участник форума
Регистрация: 03.01.2008
Сообщений: 156
Провел на форуме: 414311
Репутация:
110
|
|
2~NeiTRoN~
А почему ты считаешь, что строка "Слово слово слово,слово" чем то прерывается? Строки (Си-строки) это последовательность ASCII-символов, ограниченная '\0' в конце. Символ пробела и запятой это такие же ASCII символы как и любая гласная-согласная. Так что для подсчёта кол-ва гласных в строке тебе не надо разбирать строку по словам.
2Airoman
Та задача, ктр ты выложил к программированию имеет очень опосредованное отношение. Динамическое программирование в этом контексте - это один из разделов Методов Оптимизации. Здесь с ним тебе никто не поможет скорее всего.
Последний раз редактировалось izlesa; 10.12.2008 в 13:27..
|
|
|

10.12.2008, 13:54
|
|
Познающий
Регистрация: 03.07.2008
Сообщений: 65
Провел на форуме: 170237
Репутация:
4
|
|
Сообщение от izlesa
2~NeiTRoN~
А почему ты считаешь, что строка "Слово слово слово,слово" чем то прерывается? Строки (Си-строки) это последовательность ASCII-символов, ограниченная '\0' в конце. Символ пробела и запятой это такие же ASCII символы как и любая гласная-согласная. Так что для подсчёта кол-ва гласных в строке тебе не надо разбирать строку по словам.
А почему тогда код jawbreaker. При вводе aaassdduuiio выводит эту строку и количество гласных:8, а при вводе aaass dduuiio-выводит aaass и количество гласных: 3?Хотя нужно чтобы всеравно вывел 8
|
|
|

10.12.2008, 14:18
|
|
Новичок
Регистрация: 09.12.2008
Сообщений: 3
Провел на форуме: 5714
Репутация:
0
|
|
Сообщение от izlesa
2Airoman
Та задача, ктр ты выложил к программированию имеет очень опосредованное отношение. Динамическое программирование в этом контексте - это один из разделов Методов Оптимизации. Здесь с ним тебе никто не поможет скорее всего.
Да мне хоть что-то похожее на этот динамический метод. а то я линейно сделал, а это не подходит. Спасайте!!!
|
|
|

10.12.2008, 14:44
|
|
Участник форума
Регистрация: 03.01.2008
Сообщений: 156
Провел на форуме: 414311
Репутация:
110
|
|
млин, мне проще на Си переделать немного, чем в приплюснотом разбираццо ...
Код:
#include <stdio.h>
char *vowels = "aeiou";
int countvowels(char *s)
{
int res = 0;
int i;
int j;
for(i = 0; i < strlen(s); i++)
{
for(j = 0; j < strlen(vowels); j++)
{
if (s[i] == vowels[j])
res++;
}
}
return res;
}
int main()
{
char str[100];
gets(str);
printf("%s", str);
printf("\nvowels count : %d", countvowels(str));
return 0;
}
всё должно быть в принципе понятно ...
|
|
|

10.12.2008, 15:04
|
|
Участник форума
Регистрация: 07.07.2008
Сообщений: 161
Провел на форуме: 1027635
Репутация:
234
|
|
Сообщение от ~NeiTRoN~
Спс=) Но мне немного другое нужно. Мне нужно не просто определить количество гласных в непрерывной строке, а в строке типа "Слово слово слово,слово"=(
PHP код:
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
string vowels = "aeiou";
int countvowels(const string& s)
{
int res = 0;
for(int i = 0; i < s.length(); i++)
for(int j = 0; j < vowels.length(); j++)
if (s[i] == vowels[j])
res++;
return res;
}
int main()
{
string a;
getline(cin, a);
cout << a << "\n";
cout << countvowels(a);
cin.get();
return 0;
}
так? У cin'a разделитель это пробел, а здесь читается вся строчка до перевода строки.
Последний раз редактировалось jawbreaker; 10.12.2008 в 15:07..
|
|
|

10.12.2008, 16:32
|
|
Познающий
Регистрация: 03.07.2008
Сообщений: 65
Провел на форуме: 170237
Репутация:
4
|
|
jawbreaker, izlesa спасибо большое!!!!=))
Единственное непонял как сделать чтобы вводить можно было несколько строк, мнеж как бы надо из нескольких строк выбирать ту в которой больше гласных, но все равно еще раз спс!
Последний раз редактировалось ~NeiTRoN~; 10.12.2008 в 16:35..
|
|
|

10.12.2008, 16:53
|
|
Участник форума
Регистрация: 07.07.2008
Сообщений: 161
Провел на форуме: 1027635
Репутация:
234
|
|
PHP код:
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
string vowels = "aeiou";
int countvowels(const string& s)
{
int res = 0;
for(int i = 0; i < s.length(); i++)
for(int j = 0; j < vowels.length(); j++)
if (s[i] == vowels[j])
res++;
return res;
}
int main()
{
string a, res;
int max = -1;
while(getline(cin, a)) // читаем строку пока не встречаем символ перевода строки
{
if(a == "end")// end означает конец ввода
break;
cout << a << "\n";
cout << countvowels(a) << "\n";
if (countvowels(a) > max)
{
max = countvowels(a);
res = a;
}
}
cout << max << "\n" << res;
cin.get();
return 0;
}
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|