не могу найти ошибку в коде
Primary tabs
вроде бы нормальный код, но при компиляции выдает ошибку.
ошибка выглядит так:
1>------ Построение начато: проект: прожка4, Конфигурация: Debug Win32 ------
1>Построение начато 07.10.2012 19:56:17.
1>InitializeBuildStatus:
1> Обращение к "Debug\прожка4.unsuccessfulbuild".
1>ClCompile:
1> основной файл прожки4.cpp
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(12): warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\установки\vc\include\stdio.h(304): см. объявление "scanf"
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(13): warning C4244: =: преобразование "float" в "int", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(19): warning C4244: =: преобразование "int" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(25): warning C4244: =: преобразование "int" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(26): warning C4244: =: преобразование "int" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(9): warning C4101: f: неиспользованная локальная переменная
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(9): warning C4101: d: неиспользованная локальная переменная
1> основной файл прожки 4 2.cpp
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки 4 2.cpp(12): warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\установки\vc\include\stdio.h(304): см. объявление "scanf"
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки 4 2.cpp(14): warning C4244: =: преобразование "float" в "int", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки 4 2.cpp(15): warning C4244: =: преобразование "int" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки 4 2.cpp(22): warning C4244: =: преобразование "int" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки 4 2.cpp(42): warning C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details.
1> d:\установки\vc\include\conio.h(128): см. объявление "getch"
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки 4 2.cpp(44): fatal error C1075: конец файла обнаружен ранее, чем левая фигурная скобка "{" в "d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки 4 2.cpp(6)"
1> как вариант.cpp
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(11): warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> d:\установки\vc\include\stdio.h(304): см. объявление "scanf"
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(12): warning C4244: =: преобразование "float" в "int", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(13): warning C4244: =: преобразование "int" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(20): warning C4244: =: преобразование "int" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(29): warning C4244: =: преобразование "double" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(30): warning C4244: =: преобразование "double" в "float", возможна потеря данных
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(40): warning C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details.
1> d:\установки\vc\include\conio.h(128): см. объявление "getch"
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(7): warning C4101: f: неиспользованная локальная переменная
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(7): warning C4101: d: неиспользованная локальная переменная
1> Создание кода...
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\как вариант.cpp(12): warning C4700: использована неинициализированная локальная переменная "x"
1>d:\илья\с++\илюха\прожка 4\прожка4\прожка4\основной файл прожки4.cpp(13): warning C4700: использована неинициализированная локальная переменная "x"
1>
1>СБОЙ построения.
1>
1>Затраченное время: 00:00:02.35
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
программа должна была считывать коэффициенты a, b, c и вычислять корни квадратного уравнения.
исходный код:
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
int a , b , c , d , o = 0 , f ;
float x , x1, k;
double sq ;
printf ("Vvedite znachenija a, b, c: ");
scanf("%d, %d, %d", &a, &b, &c);
o = a * x * x + b * x + c;
k = b * b - 4 * a * c;
if (k < 0)
printf("Kornei net!");
if (k = 0)
{
x = - b / 2 * a;
printf("%f", x);
}
if (k > 0)
sq = sqrt(k);
if(k>0)
{
x = (-b + sq)/2*a;
x1 = (-b - sq)/2*a;
printf("%f, %f", x, x1);
}
else
{
x = (-b + k)/2*a;
x1 = (-b - k)/2*a;
printf("%f, %f", x, x1);
}
getch();
return 0;В ЧЕМ КОСЯК?! не могу разобраться.
- Log in to post comments
- 19613 reads
tata_la
Sun, 10/07/2012 - 20:08
Permalink
сначала избавься от этого =
сначала избавься от этого =
с этим точно не скомпилируется =
вообще там если два раза кликаешь на строчку уведомления - студия покажет строчку в который ошибка.
_________ _ _ ______
dthcbz фкн вгу and co
vedro-compota
Sun, 10/07/2012 - 21:33
Permalink
для начала надо бы
для начала надо бы отформатировать код -
отступ слева = два пробела для каждого логического включения)
_____________
матфак вгу и остальная классика =)
humanmashine
Sun, 10/07/2012 - 22:29
Permalink
Надо поставить , как минимум
Надо поставить , как минимум закрывающую скобку для функции main. Да и чтобы компилятор не выдавал такого количества предупреждений и они просто не отбивали желания прочитать и разобраться, то не стоит делать так много преобразований типов - используйте везде double. Ведь эта прога не входит в состав супер требовательного продукта и экономить память на таких переменных не стоит. Да в и больших продуктах далеко не всегда оправданно.
Если после постановки скобки код не скомпилируется, то постарайтесь исправить такой объём преобразований типов и скинуть лог сборки заного.
baton
Mon, 10/08/2012 - 22:57
Permalink
господа, мне стыдно за мой
господа, мне стыдно за мой кривой исходный код, я посидел некоторое время и (не без посторонней помощи) исправил. вот рабочая версия:
#include "stdio.h" #include "math.h" #include "conio.h" int main() { float x , x1, sq, a, b, c; printf("Vvedite znachenija a, b, c: "); scanf("%f, %f, %f", &a, &b, &c); if (a == 0) { x = - c / b; printf("%f", x); } else { float k; k = b * b - 4 * a * c; if (k < 0) { printf("Kornei net!"); } else if (k == 0) { x = - b / (2 * a); printf("%f", x); } else { sq = sqrt(k); x = (-b + sq) / (2 * a); x1 = (-b - sq) / (2 * a); printf("%f, %f", x, x1); } } getch(); return 0; }(знаки больше\меньше при указании библиотек вручную заменены на кавычки)
humanmashine
Wed, 10/10/2012 - 17:43
Permalink
Для стандартных библиотек без
Для стандартных библиотек без разницы что использовать кавычки или знаки больше\меньше. Просто знаки "" ищут в строго определённом месте модули, а вот с кавычками сложнее, там используется "метод матрёшки", если конкретный путь не указывается, то смотрится эта библиотека сначала в рабочей папке, потом на уровне выше и так далее.
vedro-compota
Sat, 10/13/2012 - 12:02
Permalink
фишка в том, что теперешний
фишка в том, что теперешний html-фильтр давит угловые скобки если они стоят вплотную к слову на английском.
потому рекомендую в коде просто добавлять пробелы.
если индустрия написания кода на си++ будет поставлена на поток - то тогда будем искать другое решение)
_____________
матфак вгу и остальная классика =)
humanmashine
Sat, 10/13/2012 - 13:15
Permalink
примем к сведению
примем к сведению
vedro-compota
Tue, 10/09/2012 - 21:55
Permalink
во) так уже лучше)
во) так уже лучше)
_____________
матфак вгу и остальная классика =)