Rhuan Lopes Postado Junho 5, 2012 Denunciar Share Postado Junho 5, 2012 Boa tarde a todos, estou tentando fazer um exercício da minha faculdade que está falendo nota, mas estou com sérias dificuldades.Segue o exercício:Divisão através de subtrações sucessivasO resultado da divisão inteira de um número inteiro por outro número inteiro podesempre ser obtido utilizando–se apenas o operador de subtração. Assim, se quisermoscalcular (7/2), basta subtrair o dividendo (2) ao divisor (7), sucessivamente, até que oresultado seja menor do que o dividendo. O número de subtrações realizadascorresponde ao quociente inteiro, conforme o exemplo seguinte:7 - 2 = 55 - 2 = 33 - 2 = 1Descrever um programa para o cálculo da divisão de um inteiro pelo outro.Note que se o dividendo for zero, esta é uma operação matematicamente indefinida.Meu código (que não está dando certo):#include <iostream> using namespace std; void main() { int divid, divis, resul, i; cout << "Entre com o dividendo: "; cin >> divid; cout << "Entre com o divisor: "; cin >> divis; resul = (divid - divis); for (i=0;i <= divid;i++) { (resul - divis); } cout << i; }Obs: Não reparem se tiver algum erro grotesco no código... rs... estou começando a programar agora.Preciso de ajuda para conseguir resolver este exercício e entregá-lo ainda hoje... =/Desde já agradeço a atenção de todos. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ezequiel A. Ribeiro Postado Junho 15, 2012 Denunciar Share Postado Junho 15, 2012 (editado) Amigo apesar de você já ter feito o código, resolvi de outra maneira usando recursão.#include<stdio.h> #include<stdlib.h> int divide(int divis, int divid){ return divis - divid; } main(){ int divisor = 0; int dividendo = 0; int resultado = 0; int i =0; do{ puts("Entre com o divisor"); scanf("%d",&divisor); puts ("Entre com o dividendo"); scanf("%d",÷ndo); resultado = divide(divisor,dividendo); i++; while(resultado >= dividendo){ i++; resultado = divide(resultado,dividendo); } printf("%d divido por %d = %d\n",divisor,dividendo,i); i=0; }while(divisor != 0); system("pause"); } Editado Junho 15, 2012 por Ezequiel A. Ribeiro Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ezequiel A. Ribeiro Postado Junho 15, 2012 Denunciar Share Postado Junho 15, 2012 resul = (divid - divis);esse trecho está errado.7/2 é (divis - divid), ou seja 7 - 2e não (divid - divis), ou seja 2 -7 Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Rhuan Lopes
Boa tarde a todos, estou tentando fazer um exercício da minha faculdade que está falendo nota, mas estou com sérias dificuldades.
Segue o exercício:
Divisão através de subtrações sucessivas
O resultado da divisão inteira de um número inteiro por outro número inteiro pode
sempre ser obtido utilizando–se apenas o operador de subtração. Assim, se quisermos
calcular (7/2), basta subtrair o dividendo (2) ao divisor (7), sucessivamente, até que o
resultado seja menor do que o dividendo. O número de subtrações realizadas
corresponde ao quociente inteiro, conforme o exemplo seguinte:
7 - 2 = 5
5 - 2 = 3
3 - 2 = 1
Descrever um programa para o cálculo da divisão de um inteiro pelo outro.
Note que se o dividendo for zero, esta é uma operação matematicamente indefinida.
Meu código (que não está dando certo):
Obs: Não reparem se tiver algum erro grotesco no código... rs... estou começando a programar agora.
Preciso de ajuda para conseguir resolver este exercício e entregá-lo ainda hoje... =/
Desde já agradeço a atenção de todos.
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.