![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
![]() |
Diman |
![]() ![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Дмитрий Кожевников Репутация: ![]() ![]() ![]() |
|
DarkWishmaster |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: ![]() ![]() ![]() |
Здравствуйте. Помогите, пожалуйста, с решением второй и четвёртой задачи на C. Можно просто словесный алгоритм решения. Заранее, спасибо! ![]() ![]() ) По второй задаче делаем цикл от 1 до N: for i:=1 to n do если i палиндром тогда если i^3 палиндром, то выводи на экран i. для функции полиндрома можно поставить все цифры числа в векторе, пройти пол вектора и посмотреть если a[i]=a[n-i+1] если да, то значит он палиндром. Вот для четвертой задачи:
В С не разбираюсь, но думаю тебе и тут будет понятно. Сообщение отредактировано: DarkWishmaster - 31.03.2011 16:55 |
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
DarkWishmaster, усложняешь решение. Все проще гораздо.
Во-первых, никто не просил печатать все числа Хэмминга. Достаточно напечатать одно: то самое, которое первое после заданного пользователем числа. А для того, чтобы определить, принадлежит ли число к последовательности Хэмминга, совсем не нужно определять его простоту. Достаточно его поочередно целочисленно делить на 2, 3, 5 до тех пор пока либо в частном не получим 1 (следовательно, число других делителей кроме 2, 3, 5 не имеет), либо пока остаток будет ненулевым. К примеру, берем 10. сначала делим на 2. =5 (0 в остатке). Еще раз на 2? Нет, нельзя, в остатке будет 1. На 3? Нет, в остатке будет 2. На 5? Да, =1 (0 в остатке). Добрались до 1 в частном, число является 5-гладким (это еще одно название такой последовательности. Подробнее здесь) Итого, программа выглядит так: #include <iostream>Вводим 1025 - программа справедливо показывает, что следующее число Хэмминга = 1080. |
TarasBer |
![]()
Сообщение
#4
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
> std::cout << "Hamming(" << index << ") = " << i << std::endl;
Где здесь C? > while(!(n % divs[i])) // Пока остаток от деления = 0 Может, тут лучше прямо написать? while (0 == n % divs[i]) -------------------- |
-Volvo- |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата Где здесь C? Я нигде решения "копируй и сдавай" не обещал. Я даю рабочее решение, но чтобы его сдать - надо хоть что-то сделать самостоятельно.Цитата Может, тут лучше прямо написать? Вот когда ты будешь писать код - там будешь решать, что лучше, а что - хуже. Я делаю так, как привык делать. Если кто-то не знает, что (!n) и (n == 0) это одно и то же - это ни разу не мои проблемы.while (0 == n % divs[i]) |
TarasBer |
![]()
Сообщение
#6
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
> Если кто-то не знает, что (!n) и (n == 0) это одно и то же - это ни разу не мои проблемы.
Ну конечно, все сразу автоматом так и прочитывают, не напрягаясь. А комментарий в этом месте ты просто так написал. -------------------- |
![]() ![]() |
![]() |
Текстовая версия | 22.07.2025 2:26 |