В чем ошибки?

Ошибка 1 error C3861: sqr: идентификатор не найден
2 IntelliSense: идентификатор «sqr» не определен

// summa_ryada.cpp: определяет точку входа для консольного приложения.
    //

    #include "stdafx.h"
    #include <iostream>
    #include <cmath>

    using namespace std;

    int main()
    {
        setlocale(0, "Rus");

        int l, E;

        cout<<"Введите значение переменной l: ";

        cin>>l;
        {
        for (int i=1; i<=50; i++)
            E=E+( l/( sqr(i) ) );
        }
        cout<<E<<endl;
        system("pause");
        return 0;
    }
-- Was ist das "sqr"? - подумал Штирлиц и задумчиво почесал репу.

Если это функция извлечения квадратного корня, то это sqrt(double(i)). Если имеется ввиду возведение в квадрат, то здесь лучше написать как double(i * i).

Кроме того, переменная E должна быть типа с плавающей точкой. Как минимум, это тип double. Иначе вся эта программа превращается в тыкву.

Иидентификатор переменной l лучше не использовать: слишком похоже на 1.

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.

Ответить

Вы можете использовать разметку markdown для оформления комментариев и постов. Используйте функцию предпросмотра для проверки корректности разметки.

Пожалуйста, оформляйте исходный код в соответствии с правилами разметки. Для того, чтобы вставить код в комментарий, скопируйте его в текстовое поле ниже, после чего выделите то, что скопировали и нажмите кнопку «код» в панели инструментов. Иначе ваш код может принять нечитаемый вид.

Либо производите оформление кода вручную, следующим образом:

``` #include <iostream> using namespace std; int main() { // ... } ```

Предпросмотр сообщения

Ваше сообщение пусто.