Вопрос № 175460: Здравствуйте, уважаемые эксперты. Прошу Вас исправить мою программу: Программа извлекает слова из введенных_пользователем_символов. Написана полностью, только в некоторых месташ ошибся и не знаю как исправить. Код с подробными...
Вопрос № 175469: Здравствуйте уважаемые эксперты. Помогите с решением вот такой задачи . По условию задачи нужно ввести свой год, месяц и день рождения. И определить является ли дата рождения очень счастли...
Вопрос № 175460:
Отвечает Micren, Бакалавр :
Здравствуйте, Иванов Андрей Владимирович. Зачем же так сложно то? На C++ это можно все сделать гораздо короче. Программа. C++. Компилировал GCC.
int main() { locale::global(locale("")); wstring str; wcout<<L"Введите строку:"<<endl; getline(wcin,str); wcout<<L"Введена строка:\""<<str<<L"\""<<endl;
// Адаптер для функции iswalnum() pointer_to_unary_function<wint_t,int> isalnumAdapter=ptr_fun<wint_t,int>(iswalnum); // Итераторы wstring::const_iterator first,last=str.begin(),end=str.end(); // Здесь будем хранить наши слова vector<wstring> words; while((first=last)!=end) { // Находим границы слова last=find_if(first=find_if(first,end,isalnumAdapter),end,not1(isalnumAdapter)); // Сохраним его words.push_back(wstring(first,last));
}; if(words.size()) { wcout<<L"Строка состоит из следующих слов:"<<endl; copy(words.begin(),words.end(),ostream_iterator<wstring,wchar_t>(wcout,L"\n")); } else { wcout<<L"Слов нет"<<endl; } return 0; }
Пример вывода:
Код:
Введите строку: Алгоритм find_if() выполняет поиск элемента, соответствующего унарному предикату Введена строка:"Алгоритм find_if() выполняет поиск элемента, соответствующего унарному предикату" Строка состоит из следующих слов: Алгоритм find if выполняет поиск элемента соответствующего унарному предикату
В
программе используется ф-я iswalnum() для определения символов входящих в слова. Естественно, что эту функцию можно заменить на какую Вам угодно.
Ответ отправил: Micren, Бакалавр
Ответ отправлен: 20.12.2009, 17:15
Оценка ответа: 5
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 257966
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 175469:
Здравствуйте уважаемые эксперты. Помогите с решением вот такой задачи . По условию задачи нужно ввести свой год, месяц и день рождения. И определить является ли дата рождения очень счастливой, просто счастливой или обычной. - очень счастливая. Если все остатки от деления на 7 сумм цифр года, месяца и дня совпадают. - просто счастливая. Если совпадают два любых остатка. - обычная. Если совпадений нет. Задание выполнить в MS Visual Studio
2008, проект Win32, и если можно расписать все в подробности...
// функция возвращает сумму цифр числа int summa(int n) { int sum=0,c=0,k=1; while(k) { k=n/pow(10,(float)(c+1)); c++; //
подсчитываем количество цифр в числе } for(int i=0;i<c;i++) { sum+=(n%(int)(pow((float)10,(i+1))))/pow((float)10,i); // сумма цифр числа } return sum; }
int main() { int year,day,month;
cout<<"Enter year : "; cin>>year; cout<<"\nEnter month : "; cin>>month; cout<<"\nEnter day : "; cin>>day; <
br> int ost1=summa(year)%7; // вычисляем остаток от деления на 7 суммы цифр года int ost2=summa(month)%7; // вычисляем остаток от деления на 7 суммы цифр месяца int ost3=summa(day)%7; // вычисляем остаток от деления на 7 суммы цифр дня
if(ost1==ost2 && ost3==ost2) // если все остатки равны,то дата очень счастливая cout<<"\nvery lucky\n"; else if(ost1==ost2 || ost2==ost3 || ost1==ost3) // если хотябы два остатка равны, то дата просто счастливая cout<<"\nlucky\n"; else cout<<"\nregular
date\n"; // обычная дата _getch(); }
Ответ отправил: Kamerad, 7-й класс
Ответ отправлен: 20.12.2009, 22:34
Оценка ответа: 5
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 257979
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.