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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 40, средняя оценка - 4.73
T-killer
1 / 1 / 0
Регистрация: 02.05.2012
Сообщений: 18
#1

Напечатайте все точные квадраты натуральных чисел, не превосходящие данного числа n (например, при вводе 50 программа выводит 1 4 9 16 25 36 49). - C++

23.05.2012, 06:39. Просмотров 5151. Ответов 7
Метки нет (Все метки)

1. Напечатайте все точные квадраты натуральных чисел, не превосходящие данного числа n (например, при вводе 50 программа выводит 1 4 9 16 25 36 49).
2. Дано натуральное число n. Определите, является ли оно степенью числа 2, и выведите слово YES, если является и слово NO, если не является.
3. Для данного натурального числа n определите такое наименьшее целое k, что 2k≥n. Например, при вводе числа 7 программа должна вывести 3.
4. В первый день спортсмен пробежал X километров, а затем он каждый день увеличивал пробег на 10% от предыдущего значения. По данному числу Y определите номер дня, когда суммарный пробег спортсмена составит не менее Y километров. Например, при вводе X=10,Y=100 программа должна вывести 8.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2012, 06:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Напечатайте все точные квадраты натуральных чисел, не превосходящие данного числа n (например, при вводе 50 программа выводит 1 4 9 16 25 36 49). (C++):

Вывести все точные квадраты натуральных чисел, не превосходящие данного числа N - C++
Народ, помогите пожалуйста!. Вот задача: Выведите все точные квадраты натуральных чисел, не превосходящие данного числа N. Вот что я...

Найти среди данного набора чисел точные квадраты - C++
Написать программу, выясняющую, есть ли среди данных 10 чисел точные квадраты. Если такие есть, то после ввода числа должно появляться...

Вывести квадраты натуральных чисел не превосходящие заданное число - C++
По данному целому числу N распечатайте все квадраты натуральных чисел, не превосходящие N, в порядке возрастания. #include <iostream> ...

Вывести все точные квадраты натуральных чисел, не превосходящие данного числа N - Free Pascal
дано число N. Необходимо вывести все точные квадраты натуральных чисел, не превосходящие данного числа N.

Вывести все точные квадраты натуральных чисел, не превосходящие числа n - C#
Народ, может кто помочь с заданиями? Очень нужно. Спасибо тем, кто откликнится. 1.Дано натуральное число n. Напишите процедуру static void...

Напечатайте от 1 до 4 натуральных чисел, квадраты которых дают в сумме заданное число - Turbo Pascal
Теорема Лагранжа утверждает, что любое натуральное число можно представить в виде суммы четырех точных квадратов. По данному числу n...

7
Mashka_mulashka
22 / 22 / 4
Регистрация: 13.12.2011
Сообщений: 792
23.05.2012, 09:47 #2
2-я задача.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
int main()
{
    int n;//объявили n
    cout << "entr n" << endl;//приглашение ввести n
    cin >> n;//ввели n
    if(n%2!=0)//проверка, если число изначально не кратное двум, то просто выводим "NO"
    {
        cout << "NO" << endl;
        system("pause");
    }
    else//если число кратное двум
    {
        while(n>2)//делим n на два, пока оно не станет меньше двойки.
            n=n/2;
    if(n/2==1)// числа, которые являются степенью двойки в конечном итоге пройдут через это условие.
        cout << "YES" << endl;
    if(n%2!=0)//числа, которые не являются степенью двойки в конечном итоге пройдут через это условие.
        cout << "NO" << endl;
    system("pause");
    }
}
Добавлено через 3 минуты
Цитата Сообщение от T-killer Посмотреть сообщение
3. Для данного натурального числа n определите такое наименьшее целое k, что 2k≥n. Например, при вводе числа 7 программа должна вывести 3.
.
может быть условие, что 2k<=n??? т.к. если n=7, а k=3, то условие 2k>=n не выполнится.
0
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.05.2012, 09:49 #3
Mashka_mulashka, неправильно будет считать:
Хоть число является степенью двойки, хоть не является, Вы этим условием:
C++
1
2
        while(n>2)//делим n на два, пока оно не станет меньше двойки.
            n=n/2;
достигните всегда n равное 1
0
Mashka_mulashka
22 / 22 / 4
Регистрация: 13.12.2011
Сообщений: 792
23.05.2012, 09:52 #4
Цитата Сообщение от valeriikozlov Посмотреть сообщение
Mashka_mulashka, неправильно будет считать:
Хоть число является степенью двойки, хоть не является, Вы этим условием:
C++
1
2
        while(n>2)//делим n на два, пока оно не станет меньше двойки.
            n=n/2;
достигните всегда n равное 1
нет, проверьте себя еще раз

т.к. нечетные числа отсекуться в самом начале проги, то их нет смысла даже вводить.поэтому мы имеем только четные числа.все числа, которые не являются степенью двойки по этому условию окажуться равными числу 1, а которые являются степенью двойки, окажуться равными числу два
0
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.05.2012, 10:02 #5
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
т.к. нечетные числа отсекуться в самом начале проги, то их нет смысла даже вводить.поэтому мы имеем только четные числа.все числа, которые не являются степенью двойки по этому условию окажуться равными числу 1, а которые являются степенью двойки, окажуться равными числу два
немного не точно выразился - не всегда будет, но при некоторых значениях будет:
проверяйте: 18
0
Mashka_mulashka
22 / 22 / 4
Регистрация: 13.12.2011
Сообщений: 792
23.05.2012, 10:08 #6
ну дая лошараможет быть потому, что писала на скорую руку
0
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.05.2012, 10:13 #7
Mashka_mulashka, давайте я подскажу один способ, а Вы его реализуете:
вводите n, затем:
C++
1
2
while(n%2==0)
n/=2;
теперь если n не равно 1, то NO.
Если равно 1 то YES
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
23.05.2012, 11:03 #8
2.
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main()
{
   int value = 4;
   bool result = value & (value - 1);
   std::cout << (result ? "NO" : "YES") << std::endl;
}
Добавлено через 4 минуты
1.

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
#include <iostream>
 
template<int N, int Max>
struct Square
{
   static void apply()
   {
      if (N*N < Max)
      {
         std::cout << N*N << std::endl;
         Square<N+1, Max>::apply();
      }
      else
      {
         Square<Max, Max>::apply();
      }
   }
};
 
template<int Max>
struct Square<Max, Max>
{
   static void apply()
   {
   }
};
 
template<int Max>
void square()
{
   Square<2, Max>::apply();
}
 
int main()
{
   square<50>();
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.05.2012, 11:03
Привет! Вот еще темы с ответами:

Программа, вводящая натуральные числа а и б и выводит все нат.числа, квадраты кот. в диапазоне - Visual Basic
Вводится два числа а и б, надо вывести все натуральные числа, квадраты которых находятся в интервале от а до б (иными словами натуральные...

сделать циклическую программу для любых чисел,чтобы при вводе числа получалось например так: 512=(5+1+2)3 - Objective-C
сделать циклическую программу для любых чисел,чтобы при вводе числа получалось например так: 512=(5+1+2)3.

Вывести все простые числа, не превосходящие данного числа. - Turbo Pascal
Составить программу на турбо паскале: напишите программу, печатающую все простые числа, не превосходящие данного числа.

Введены 2 числа,программа находит наименьшие и выводит ряд натуральных чисел.Цикл - C++
В этот код надо встроить цикл,который бы выводил ряд натуральных чисел из минимального прибавляя по 1. К примеру:Ввели х=15 y=20 ....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
23.05.2012, 11:03
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru