Помощь - Поиск - Пользователи - Календарь
Полная версия: Ввод данных в С
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Ада и другие языки
willhunting
Никак не могу ввести данные. После первого ввода одной переменной виснет. Результат, естественно, тоже не выдаёт. При вводе данных типа х=а; y=b… всё работает.
Среда Dev-C++.

Код

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int   main()
{    
double alfa,rezult,B,x,y,m,shag;
printf("vvedite koordinatu po osi Y=\n");
scanf(" %f ", &y);

printf("vvedite shag pristrelki\n");
scanf("%f", &shag);  
printf("vvedite tocnosti pribligeniya\n");
scanf("%f", &alfa);

printf("vvedite tochku cherez kotoruy dolzgno proiti reshenie X=\n");
scanf(" %f", &x);


m=0;

m=m+shag;
rezult=x*x+m*x+1-y;
while((fabs(rezult)>alfa) || (m>2))
{
m=m+shag;
rezult=x*x+m*x+1-y;
}
if (m>2) printf("tocnosti ne dostignuta vvedite drugoi shag/n");


else

printf("m=%f\n",m);
system("pause");


return 0;
}
volvo
Цитата
Никак не могу ввести данные.
Естественно... Формат ввода какой задал?

scanf(" %f ", &y);
, то есть, перед числом, и после числа - пробел??? blink.gif Пробелы из форматной строки убери - все заработает (я про ввод чисел).
willhunting
Цитата(volvo @ 12.11.2007 22:33) *

Естественно... Формат ввода какой задал?

scanf(" %f ", &y);
, то есть, перед числом, и после числа - пробел??? blink.gif Пробелы из форматной строки убери - все заработает (я про ввод чисел).

Пробелы убрал. Спасибо. Только решение так и не выдаёт. При вводе же переменных так
Код

x=1;
y=3;
alfa=0.0001;
shag=0.01;

всё прекрасно работает(выдаёт верный ответ).
volvo
Хм... Ну да... Ты же вводишь double, а форматная строка - для float...

scanf("%lf", &y);
и так далее...
willhunting
Цитата(volvo @ 12.11.2007 23:43) *

Хм... Ну да... Ты же вводишь double, а форматная строка - для float...

scanf("%lf", &y);
и так далее...

Спасибо большое. Работает.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.