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

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

Войти
Регистрация
Восстановить пароль
 
Vasya2904
0 / 0 / 0
Регистрация: 07.06.2011
Сообщений: 37
#1

Вычислить первый целый корень из последовательности - C++

30.03.2013, 15:12. Просмотров 412. Ответов 5
Метки нет (Все метки)

Доброе время суток! Задали задачку - написать программу, которая из последовательности чисел выбирает первое число, корень которого - целый. Например, последовательность чисел от 30 до 80 первое число -36. Нужно сделать через цикл for. Мой вариант кода:
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>
#include <cmath>
using namespace std;
int main()
{
    int a, b,i;
    double drob, cel, j;
    cout << "Enter:" ;
    cin >> a;
    cout << "Enter:" ;
    cin >> b;
    while (i>=a)
{
        j=sqrt(i);
    drob = modf(j , &cel);
    if (drob = 0)
    {
             cout << j;
             };    }
    cout << j;
    cin.get();
    cin.get();
    }
Выдаёт всегда 0, DEV-C++. Заранее спасибо за помощь.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2013, 15:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычислить первый целый корень из последовательности (C++):

Подсчет произведения последовательности из n элементов и вычислить корень n-ой степени - C++
Всем доброго времени суток. Написал программу которая считает произведение последовательности из n элементов и вычисляет корень n-ой...

Почему методом Гаусса считает правильно только первый корень? - C++
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() { int n=0; int m=0; int l1=5; int...

вычислить корень - C++
По введённому х вычислите корень из (13 х + 22 х)

Найти первый член последовательности - C++
Как это осуществить?

Найти первый член последовательности - C++
Найти первый член последовательности, для которого выполнено условие /an-a(n-1)/&lt;E, если последовательность образована по закону: ...

Найти первый член последовательности - C++
на языке С Даны вещественные числа A&lt;0 и B&gt;0. Найти первый член последовательности, который не принадлежит отрезку . :help: плз,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
IrineK
Заблокирован
30.03.2013, 22:59 #2
Тоже вариант, но разумный:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <cmath>
using namespace std;
 
int main()
{   int a=30, b=80, i;
    double res;
    for(i=a; i<=b; i++)
    {   res = sqrt((double)i);
        if(res == (int)res)
            break;
    }
    cout<<"sqrt("<<i<<") = "<<res;
 
    cin.get();
    return 0;
}
0
Vasya2904
0 / 0 / 0
Регистрация: 07.06.2011
Сообщений: 37
31.03.2013, 18:42  [ТС] #3
Спасибо! Только ещё бы понять значение этих строк:
{ res = sqrt((double)i);
if(res == (int)res)
break;
}
0
IrineK
Заблокирован
02.04.2013, 11:27 #4
Мой вариант кода:
Только ещё бы понять значение этих строк:
Где-то здесь нестыковка...
0
vadim09
6 / 6 / 1
Регистрация: 04.08.2012
Сообщений: 62
02.04.2013, 12:03 #5
Цитата Сообщение от Vasya2904 Посмотреть сообщение
Спасибо! Только ещё бы понять значение этих строк:
C++
1
2
3
4
{   res = sqrt((double)i);
        if(res == (int)res)
            break;
    }
C++
1
res = sqrt((double)i);
Берем корень от i. i явно приводим к типу double, так как переменная res типа double.
C++
1
2
if(res == (int)res)
 break;
Означает, если res, не имеет плавающей точки, то (double)res==(int)res , так как при явном приведении к типу int, отбросит плавающую точку(все что после точки).
При выполнении этого условия выполняется оператор break и программа выходит из цикла.
2
Vasya2904
0 / 0 / 0
Регистрация: 07.06.2011
Сообщений: 37
02.04.2013, 16:54  [ТС] #6
Спасибо! Всё понял)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.04.2013, 16:54
Привет! Вот еще темы с ответами:

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

Вычислить корень квадратный - C++
Помогите пожалуйста написать 2 программы:1 вычислить корень квадратный от (sin(x)+cos(x)); 2 Поменять местами значения переменных х и у с...

Вычислить корень уравнения - C++
Вычислить корень уравнения функции f(x) на отрезке с точностью  = 10–6, используя метод половинного деления и выполнив предварительно...

Вычислить корень из числа. - C++
//--------------------------------------------------------------------------- #pragma hdrstop #include &lt;tchar.h&gt; #include...


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

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

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