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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2009, 18:18   #1
Darh
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 75
По умолчанию Циклы на Си

Здраствуйте. Помогите переделать проги. Задание: вычислить y=x*x+3, где х принадлежит от 0 до 15 с шагом 0,5.
У меня 3 вида циклов с шагом 1, а нужно 0,5!

Код:
void main ()
{
	int x=0;
	int y;
	while (x<=15)
	{
		y=x*x+3;
		printf ("%i\n", y);
		x++;
	}
	getch ();
}

Код:
void main ()
{
	int x,y;
	x=0;
	do
	{
		y=x*x+3;
		printf ("%i\n", y);
		x++;
	}
	while (x<=15);
	getch ();
}
Код:
void main ()
{
	int x, y;
	for (x=0; x<=15; x++)
	{
		y=x*x+3;
		printf ("%i\n", y);
	}
	getch ();
}
Darh вне форума Ответить с цитированием
Старый 08.12.2009, 18:28   #2
Fantazerishka
Пользователь
 
Регистрация: 23.09.2009
Сообщений: 62
По умолчанию

Я в Си не разбираюсь абсолютно, но у тебя x++ если мне память не изменяет это вернуть значение и прибавить единицу, в делфи или бэйсике (да и в си наверняка тоже) можно было бы написать x=x+0,5
Fantazerishka вне форума Ответить с цитированием
Старый 08.12.2009, 20:02   #3
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

В первых двух примерах замени x++ на x=x+0,5, в третьем на х+=0.5
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол
atenon вне форума Ответить с цитированием
Старый 08.12.2009, 20:28   #4
Darh
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 75
По умолчанию

Заменил, в циклах do...while и for - зацикливание, в while не правильно считает
Darh вне форума Ответить с цитированием
Старый 08.12.2009, 20:36   #5
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

#include<stdio.h>
void main ()
{
float x,y;
x=0.0;
do
{
y=x*x+3;
printf ("%f\n", y);
x+=0.5;
}
while (x<=15);

}
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Старый 08.12.2009, 20:37   #6
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

#include<stdio.h>
void main ()
{
float x, y;
for (x=0; x<=15; x+=0.5)
{
y=x*x+3;
printf ("%f\n", y);
}

}
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Старый 08.12.2009, 20:39   #7
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

#include<stdio.h>
void main ()
{
float x=0.0,y;
while (x<=15)
{
y=x*x+3;
printf ("%f\n", y);
x+=0.5;
}

}
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Старый 08.12.2009, 20:52   #8
Darh
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 75
По умолчанию

С ваших прог зацикливаний нет, но считает не правильно. Выдает:
15,25
19
23,25
28
33,25
39
45,25
и тд
(нули не писал)))
Darh вне форума Ответить с цитированием
Старый 08.12.2009, 20:55   #9
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

нули тут писать и не будет,потому что формула y=x*x+3
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Старый 08.12.2009, 21:00   #10
osichev
Форумчанин
 
Регистрация: 18.05.2009
Сообщений: 180
По умолчанию

всё тут верно!
Программист без пива, как спирт без пробки - выдохнется___________-
osichev вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
циклы Кирилл17 Помощь студентам 4 30.10.2009 20:59
Циклы lara7727 Microsoft Office Excel 2 02.10.2009 10:31
Циклы Doublefaced Помощь студентам 2 01.07.2009 20:29
Циклы Evgo Помощь студентам 1 17.06.2009 10:30