Страница 1 из 1

простейшая задача с help

Добавлено: 11 ноя 2009, 12:20
GeHa
надо написать програму которая будет запрашивать у пользователя 3 значное число а потом разбивать его на сотни десятки и единицы
например ввели число 564 ответ должен быть 500+60+4

и надо использовать толко библиотеку <stdio.h>

Re: простейшая задача с help

Добавлено: 11 ноя 2009, 13:01
DexterUa
без проверки число трехзначное или нет

Код: Выделить всё

#include <stdio.h>

void main()
{
	int x;
	printf("Enter number. x=");
	scanf("%i",&x);
	printf("\n%i00+%i0+%i",x/100,(x/10)%10,x%10);
}
с проверкой число трехзначное или нет

Код: Выделить всё

#include <stdio.h>

void main()
{
	int x;
	do{
	printf("Enter number. x=");
	scanf("%i",&x);
	}while(x<100||x>999);
	printf("\n%i00+%i0+%i",x/100,(x/10)%10,x%10);
}

Re: простейшая задача с help

Добавлено: 11 ноя 2009, 13:10
GeHa
пасиб большое!!!
ток что значит %i?

Re: простейшая задача с help

Добавлено: 11 ноя 2009, 13:18
DexterUa
вывод переменной типа Integer

Re: простейшая задача с help

Добавлено: 11 ноя 2009, 13:34
GeHa
а можно сделать вместо %i %d?

Re: простейшая задача с help

Добавлено: 11 ноя 2009, 13:52
Хыиуду
Можно, это считается как Decimal

Re: простейшая задача с help

Добавлено: 12 ноя 2009, 06:01
atavin-ta
Какой разбор на разряды требуется? Только вывести в виде суммы разрядов, или разложить по нескольким переменным? Если по перемнным, то надо делить. А то что здесь приведено решает ту же задачу иммено в формулировке: разложить число по разрядам при выводе. Хотя первому посту тоже соответсвует, как и

Код: Выделить всё

 int x;
 int b;
 int *d;
 int  n;
 int i;
 cin>x;
 n=ln(x)/ln(10)+2;
 d=new int [n]; 
 i=0;
 for (b=x, b>=0; b/=10, ++i)
 {
  d[i]=b%10;
 }
 for (; i<n; ++i)
 {
  b[i]=0;
 }
, хотя этот код ничего вообще не выведет.

Re: простейшая задача с help

Добавлено: 12 ноя 2009, 09:50
Хыиуду
Я, конечно, на Си не пишу, но в такой задаче грех не извратиться! Звиняйте, если где напутаю с синтаксисом - думаю, общая идея будет понятна
void main()
{
char[3] x;
printf("Enter number. x=");
scanf("%s",&x);
printf("\n%s00+%s0+%s",x[0], x[1], x[2]);
}

Re: простейшая задача с help

Добавлено: 18 ноя 2009, 12:06
GeHa
Bсем огромное спасибо!!! :p
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
может кто знает какуюта книгу с задачами и их решением?