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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.11.2010, 17:21   #1
Slame
Пользователь
 
Регистрация: 07.11.2010
Сообщений: 45
По умолчанию Задача на С

Люди помогите решить задачу 1. Дано натуральные числа m, n. получить их общие делители (положительные и отрицательные ).
Язык С,Просто никогда несталкивался а тут посутпил в универ и пришлось столкнуться
Slame вне форума Ответить с цитированием
Старый 07.11.2010, 18:39   #2
Ezhuk
Форумчанин
 
Регистрация: 09.10.2010
Сообщений: 217
По умолчанию

Можно сделать так: найти наименьшее число(к) и искать общий делитель в интервале от -к до к.
Код:
	int a,b,k;
	scanf("%d %d",&a,&b);
	if(a>b)
		k=a;
	else
		k=b;
	for(int i=-k;i<=k;i++){
		if(i==0)
			i++;
		if(a%i==0&&b%i==0)
			printf("%d\n",i);
	}
Ёж птица гордая, пока не пнешь не полетит.
Ezhuk вне форума Ответить с цитированием
Старый 07.11.2010, 19:23   #3
Slame
Пользователь
 
Регистрация: 07.11.2010
Сообщений: 45
По умолчанию

Спасибо большое)У меня программа в точности такая же только я делал через while
Но ошибка была в том что я в самом конце i вывел как &і и у меня почему то были какие то левые числа)Если кто то ещё сюда глянет можете обьяснить почему с & выдавало левые числа а без него всё норм?И нафиг он ваще нада?заранее благодарен)
Slame вне форума Ответить с цитированием
Старый 07.11.2010, 19:41   #4
Ezhuk
Форумчанин
 
Регистрация: 09.10.2010
Сообщений: 217
По умолчанию

Рад за вас, что у вас без моей помощи все получилось
А если выводить, как вы с &, то это ,если не ошибаюсь, выводит адрес переменной, в данном случае i.
Ёж птица гордая, пока не пнешь не полетит.
Ezhuk вне форума Ответить с цитированием
Старый 07.11.2010, 19:42   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,833
По умолчанию

Цитата:
почему с & выдавало левые числа а без него всё норм
Разгадка проста стоит только почитать, что означает & перед переменной.
p51x вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача lamer69 Помощь студентам 1 14.10.2010 08:02
Задача по C++ OldStaR Помощь студентам 4 24.05.2009 00:44
Задача/C++ Stan Помощь студентам 2 24.01.2008 20:33