#include <stdio.h>
int divide( int a, int b) ;
int divide_recursivo( int a, int b) ;
int main ( void ) {
int a, b;
printf ( "Digite o dividendo (numero que sera dividido): " ) ;
printf ( "Digite o divisor: " ) ;
printf ( "O resultado da divisao com while em funcao: %d \n " , divide
( a
, b
) ) ; printf ( "O resultado da divisao com recursividade: %d \n " , divide_recursivo
( a
, b
) ) ;
return 0 ;
}
int divide( int a, int b) {
int i = 0 ;
while ( a > 0 && a >= b) {
a = a - b;
i++;
}
return i;
}
int divide_recursivo( int a, int b) {
int i = 0 ;
if ( a > 0 && a >= b) {
a = a - b;
i++;
i += divide_recursivo( a, b) ;
}
return i;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgZGl2aWRlKGludCBhLCBpbnQgYik7CmludCBkaXZpZGVfcmVjdXJzaXZvKGludCBhLCBpbnQgYik7CgppbnQgbWFpbiAodm9pZCkgewogICAgaW50IGEsIGI7CgogICAgcHJpbnRmICgiRGlnaXRlIG8gZGl2aWRlbmRvIChudW1lcm8gcXVlIHNlcmEgZGl2aWRpZG8pOiAiKTsKICAgIHNjYW5mICgiJWQiLCAmYSk7CgogICAgcHJpbnRmICgiRGlnaXRlIG8gZGl2aXNvcjogIik7CiAgICBzY2FuZiAoIiVkIiwgJmIpOwoKICAgIHByaW50ZiAoIk8gcmVzdWx0YWRvIGRhIGRpdmlzYW8gY29tIHdoaWxlIGVtIGZ1bmNhbzogJWQgXG4iLCBkaXZpZGUoYSwgYikpOwogICAgcHJpbnRmICgiTyByZXN1bHRhZG8gZGEgZGl2aXNhbyBjb20gcmVjdXJzaXZpZGFkZTogJWQgXG4iLCBkaXZpZGVfcmVjdXJzaXZvKGEsIGIpKTsKCiAgICByZXR1cm4gMDsKfQoKaW50IGRpdmlkZShpbnQgYSxpbnQgYikgewoKICAgIGludCBpID0gMDsKCiAgICB3aGlsZSAoYSA+IDAgJiYgYSA+PSBiKSB7CiAgICAgICAgYSA9IGEgLSBiOwogICAgICAgIGkrKzsKICAgIH0KCiAgICByZXR1cm4gaTsKfQoKaW50IGRpdmlkZV9yZWN1cnNpdm8oaW50IGEsIGludCBiKSB7CgogICAgaW50IGkgPSAwOwoKICAgIGlmIChhID4gMCAmJiBhID49IGIpIHsKICAgICAgICBhID0gYSAtIGI7CiAgICAgICAgaSsrOwogICAgICAgIGkgKz0gZGl2aWRlX3JlY3Vyc2l2byhhLCBiKTsKICAgIH0KCiAgICByZXR1cm4gaTsKfQ==