Ir para o conteúdo

Publicidade

 Estatísticas do Fórum

  • 0 Usuários ativos

    0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

Cursos Online iMasters
Foto:

[Resolvido] Multiplos de 5

  • Por favor, faça o login para responder
13 respostas neste tópico

#1 Yure

Yure
  • Membros
  • 8 posts

Postado 22 setembro 2010 - 12:50

Pessoal, estou com um BO aqui...

Tenho um exercicio de Pascal pra fazer, e uma parte do exercicio é fazer uma função que
saiba se o nº que o usuário digira é ou não multiplo de 5.

ele deve exibir a resposta "Sim" ou "Não"...

Alguém tem algum ideia ae ?...
  • 0

#2 quitZAUMMM

quitZAUMMM

    YES, WE CAN

  • Membros
  • 3.923 posts

Postado 22 setembro 2010 - 13:42

num % 5 == 0

???
  • 0

#3 Yure

Yure
  • Membros
  • 8 posts

Postado 23 setembro 2010 - 11:09

em pascal...
  • 0

#4 quitZAUMMM

quitZAUMMM

    YES, WE CAN

  • Membros
  • 3.923 posts

Postado 23 setembro 2010 - 13:40

beleza, tente fazer e poste suas dúvidas..
aki ninguem vai fazer sua lição de ksa ;D

[]s
  • 0

#5 Yure

Yure
  • Membros
  • 8 posts

Postado 23 setembro 2010 - 14:39

Não quero que ninguém faça pra mim até porque essa é apenas uma parte do exercício.

A minha dúvida é se o pascal sabe diferenciar números inteiros (7), de números quebrados (7,5).

Apenas isso.
  • 0

#6 quitZAUMMM

quitZAUMMM

    YES, WE CAN

  • Membros
  • 3.923 posts

Postado 23 setembro 2010 - 15:37

+ pelo exercício amigo, isso importa saber?
poste pra gente o enunciado todo, ai sim podemos tirar melhor suas dúvidas.

[]s
  • 0

#7 Yure

Yure
  • Membros
  • 8 posts

Postado 23 setembro 2010 - 15:45

Program exemplo ;
var x,y,z:integer;

 Begin
 	writeln ('Insira um número');
 	readln (x);
 	writeln('Insira outro número');
 	readln(y);
 	z:=x div y;
 	if z = integer then
 		writeln ('Sim')
 	else
 		writeln('Não');	 
 End.
como saber se o resultado (z) da divisão (x/y) é um número inteiro ou quebrado ??

Editado por quitZAUMMM, 23 setembro 2010 - 16:21 .
Inclusão da tag [code]

  • 0

#8 quitZAUMMM

quitZAUMMM

    YES, WE CAN

  • Membros
  • 3.923 posts

Postado 23 setembro 2010 - 16:21

Nesse caso com ctz o resultado vai ser um inteiro, pois INTEIRO / INTEIRO = INTEIRO.
acho q da pra você tentar algo assim:
aux : integer;
resul: real;
resul := x / y;
aux := resul;
if ((aux/resul) = 0) writeln ('Inteiro')

teste e fala se deu certo.

[]s
  • 0

#9 Yure

Yure
  • Membros
  • 8 posts

Postado 23 setembro 2010 - 17:05

ele deu erro..."aux:integer", não pode ser ":= resul:real"

"dados incompativeis" diz, o compilador.

vou te passar o que pede o exercício:

Fazer um programa em pascal que retorne funções para:

1 - ...
2 - ...
3 - Retornar se o número digitado é múltiplo de 5 (Sim/Não) - Tipo de retorno (String)

Ou seja, se você dividir qualquer número que não seja multiplo de 5 por 5 a resposta vai ser um número quebrado.
Mesmo sendo INTEIRO/INTEIRO (Ex. 11/5 = 2,2).

Preciso saber como diferenciar se o resultado da divisão é inteiro ou quebrado.

essa é a dúvida.
  • 0

#10 quitZAUMMM

quitZAUMMM

    YES, WE CAN

  • Membros
  • 3.923 posts

Postado 23 setembro 2010 - 17:19

Não mano..
não conheço muito o pascal, + acho que ele é igual tds outras linguagens..
divisão de inteiros sempre da inteiro..

e msm não compilando você entendeu minha idéia para saber se tem "quebrado" ?

[]s
  • 0

#11 Yure

Yure
  • Membros
  • 8 posts

Postado 23 setembro 2010 - 17:41

sim eu intendi...

mas dessa maneira ele não deixa...vou continuar pesquisando aqui..

valeu...
  • 0

#12 Marcelo de Andrade

Marcelo de Andrade
  • Membros
  • 557 posts

Postado 23 setembro 2010 - 17:45

Só utilizar a função MOD.
Program exemplo ;
var n:integer;

 Begin
        writeln ('Insira um número');
        readln (n);

			if ( ( n mod 5 ) = 0 ) then
				writeln('Inteiro');
			
 End.


PS: A função MOD retorno o resto de uma divisão.
  • 0

#13 quitZAUMMM

quitZAUMMM

    YES, WE CAN

  • Membros
  • 3.923 posts

Postado 24 setembro 2010 - 11:21

foi oq eu disse no meu primeiro post ;D

[]s
  • 0

#14 Yure

Yure
  • Membros
  • 8 posts

Postado 24 setembro 2010 - 13:35

Ficou assim a função...

function multiplo (r:string):string;
  begin
  		z := n mod 5;
  		if z > 0 then
  			r:= 'Não'
  		else 
  			r:= 'Sim';  
  end;
;
  • 0




Publicidade

/ins>