Форум: Форум C++Разное
Новые темы: 00
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Функция перестала работать при переходе от int к double
 
 автор: Oazis   (09.01.2008 в 02:58)   письмо автору
 
 

почему то когда программа была сделана только для целых чисел она давала правильный ответ а сейчас когда переделал чтоб она еще и дробные числа высчитывала она неправильный ответ выдает, помогите кто может

#include <stdio.h>
#include <conio.h>
#include <locale.h>
int main(){
setlocale(LC_ALL,"rus");
int x,z,n;
double y;
printf ("Введите x:");
scanf("%f",&x);
printf ("Введите n:");
scanf("%f",&n);
if(n<0){
printf ("n неможет быть отрицательным!!");
_getch();
return 0;}
else{
z=(-1)^n*x^(2*n-1)/(2*n-1);
y=1-x^z;
printf("Ответ:%f\n",y);}
_getch();
}

  Ответить  
 
 автор: cheops   (09.01.2008 в 06:05)   письмо автору
 
   для: Oazis   (09.01.2008 в 02:58)
 

А программа что делает? Вы изменили тип у переменой y?

  Ответить  
 
 автор: zzDimazz   (11.01.2008 в 13:33)   письмо автору
 
   для: Oazis   (09.01.2008 в 02:58)
 

scanf("%f",&x);

а все наверное потому что переменная имеет тип int а вы пытаетесь ввсести ее как float

scanf("%d",&x); 

а вот так правильнее!!
printf("Ответ:%f\n",y);
тоже не правильно нужно так
printf("Ответ:%ld\n",y);

  Ответить  
 
 автор: Oazis   (12.01.2008 в 07:22)   письмо автору
 
   для: zzDimazz   (11.01.2008 в 13:33)
 

нужно чтобы она работала и когда пользователь введет дробные числа

  Ответить  
 
 автор: zzDimazz   (14.01.2008 в 15:11)   письмо автору
 
   для: Oazis   (12.01.2008 в 07:22)
 


scanf("%ld",&x);

тогда так :)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования