Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.06.2016, 09:19   #1
love_me
Пользователь
 
Аватар для love_me
 
Регистрация: 21.04.2016
Сообщений: 12
Вопрос Ошибка в коде

Код:
#include <stdio.h>
#include <conio.h>
#include <StdAfx.h>
void main()
	{int i, n, x, fact, znak;
	printf ("VVedite n");
	printf ("VVedite x");
	scanf ("%d", &n);
	scanf ("%f", &x);
	float s=0; fact=1; znak=1;
	for (i=1; i<=n; i++)
	{
		fact=fact*i;
	if (i%2<=1)
	{
		znak=znak*(-1);
		s=s+(znak)*pow(x,i)/fact;
	}
	}
	getch();
}
Подскажите, пожалуйста, где ошибка в коде?
love_me вне форума Ответить с цитированием
Старый 11.06.2016, 09:30   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

А почему вы решили, что она есть? В чем проявляется?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 11.06.2016, 09:35   #3
love_me
Пользователь
 
Аватар для love_me
 
Регистрация: 21.04.2016
Сообщений: 12
По умолчанию

он не компилирует и вот, что выдает
1>------ Построение начато: проект: lab3, Конфигурация: Debug Win32 ------
1> lab3.cpp
1>c:\documents and settings\вика\рабочий стол\прога\lab3\lab3\lab3.cpp(2): warning C4627: #include <conio.h>: пропущен при поиске использования предкомпилированного заголовка
1> Добавление директивы в "StdAfx.h" или перестройка предкомпилированного заголовка
1>c:\documents and settings\вика\рабочий стол\прога\lab3\lab3\lab3.cpp(8): 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> c:\program files\microsoft visual studio 10.0\vc\include\stdio.h(304): см. объявление "scanf"
1>c:\documents and settings\вика\рабочий стол\прога\lab3\lab3\lab3.cpp(9): 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> c:\program files\microsoft visual studio 10.0\vc\include\stdio.h(304): см. объявление "scanf"
1>c:\documents and settings\вика\рабочий стол\прога\lab3\lab3\lab3.cpp(17): error C3861: pow: идентификатор не найден
1>c:\documents and settings\вика\рабочий стол\прога\lab3\lab3\lab3.cpp(20): error C3861: getch: идентификатор не найден
love_me вне форума Ответить с цитированием
Старый 11.06.2016, 09:43   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Для pow надо инклюд <cmath> или что-то типа того.

A getch не стандартная функция, видимо ее нет в студии или называется по-другому. Для паузы можно просто
Код:
system("pause");
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 11.06.2016, 09:54   #5
love_me
Пользователь
 
Аватар для love_me
 
Регистрация: 21.04.2016
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Для pow надо инклюд <cmath> или что-то типа того.

A getch не стандартная функция, видимо ее нет в студии или называется по-другому. Для паузы можно просто
Код:
system("pause");
все равно не получается

1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(583): может быть "long double pow(long double,int)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(535): или "float pow(float,int)"
1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(497): или "double pow(double,int)"
1> при попытке сопоставить список аргументов "(int, int)"
1>c:\documents and settings\вика\рабочий стол\прога\lab3\lab3\lab3.cpp(21): error C3861: system: идентификатор не найден
Код:
#include <stdio.h>
#include <conio.h>
#include <StdAfx.h>
#include <math.h>
void main()
	{int i, n, x, fact, znak;
	printf ("VVedite n");
	printf ("VVedite x");
	scanf ("%d", &n);
	scanf ("%f", &x);
	float s=0; fact=1; znak=1;
	for (i=1; i<=n; i++)
	{
		fact=fact*i;
	if (i%2<=1)
	{
		znak=znak*(-1);
		s=s+(znak)*pow(x,i)/fact;
	}
	}
	system("pause");
}
love_me вне форума Ответить с цитированием
Старый 11.06.2016, 09:58   #6
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Код:
pow((double) x, i)
а для system инклюд например stdlib.h
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 11.06.2016, 10:06   #7
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
#include <StdAfx.h>
должна быть первой строкой.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.06.2016, 10:07   #8
love_me
Пользователь
 
Аватар для love_me
 
Регистрация: 21.04.2016
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Код:
pow((double) x, i)
а для system инклюд например stdlib.h
сейчас выдает только одну ошибку
1>c:\documents and settings\вика\рабочий стол\прога\hgk\hgk\kjg.cpp(20): error C2660: getch: функция не принимает 1 аргументов
Код:
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()
	{int i, n, x, fact, znak;
	printf ("VVedite n");
	printf ("VVedite x");
	scanf ("%d", &n);
	scanf ("%f", &x);
	float s=0; fact=1; znak=1;
	for (i=1; i<=n; i++)
	{
		fact=fact*i;
	if (i%2<=1)
	{
		znak=znak*(-1);
		s=s+(znak)*pow((double) x, i)/fact;
	}
	}
	getch("void");
}
love_me вне форума Ответить с цитированием
Старый 11.06.2016, 10:10   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Код:
if (i%2<=1)
всегда == true.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 11.06.2016, 10:15   #10
love_me
Пользователь
 
Аватар для love_me
 
Регистрация: 21.04.2016
Сообщений: 12
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Код:
if (i%2<=1)
всегда == true.
исправила, но все равно "error C2660: getch: функция не принимает 1 аргументов"
love_me вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Java. Ошибка. Компилируется, но не запускается. Ошибка duplicate class. Проблема не в коде. nevender Общие вопросы по Java, Java SE, Kotlin 2 13.02.2016 13:24
Где ошибка в этом исходном коде на языке Си? Или ошибка в Excel? ArchiCurtis Помощь студентам 2 07.04.2012 14:16
Ошибка в коде X_ALONE_X Паскаль, Turbo Pascal, PascalABC.NET 2 24.08.2011 18:40
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58