#include <stdio.h>
int soma( void ) {
int valor = 0 , soma = 0 ;
printf ( "Foi escolhida a soma:\n \n " ) ; do {
printf ( "Informe os valores desejados e 0 (zero) para concluir:" ) ; soma += valor;
} while ( valor != 0 ) ;
return soma;
}
int mult( void ) {
int valor = 0 , mult = 1 ;
printf ( "Foi escolhida a multiplicacao:\n \n " ) ; do {
printf ( "Informe os valores desejados e 0 (zero) para concluir:" ) ; if ( valor == 0 ) break ;
mult *= valor;
} while ( valor != 0 ) ;
return mult;
}
int main( ) {
int op = 0 , result;
printf ( "Informe a operacao desejada soma(1) ou produto (2):" ) ; if ( op == 1 ) result = soma( ) ;
else if ( op == 2 ) result = mult( ) ;
printf ( "O resultado foi: %d" , result
) ; }
//https://pt.stackoverflow.com/q/93032/101
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgc29tYSh2b2lkKSB7CiAgICBpbnQgdmFsb3IgPSAwLCBzb21hID0gMDsKICAgIHByaW50ZigiRm9pIGVzY29saGlkYSBhIHNvbWE6XG5cbiIpOwogICAgZG8gewogICAgICAgIHByaW50ZigiSW5mb3JtZSBvcyB2YWxvcmVzIGRlc2VqYWRvcyBlIDAgKHplcm8pIHBhcmEgY29uY2x1aXI6Iik7CiAgICAgICAgc2NhbmYoIiVkIiwgJnZhbG9yKTsKICAgICAgICBzb21hICs9IHZhbG9yOwogICAgfSB3aGlsZSAodmFsb3IgIT0gMCk7CiAgICByZXR1cm4gc29tYTsKfQoKaW50IG11bHQodm9pZCkgewogICAgaW50IHZhbG9yID0gMCwgbXVsdCA9IDE7CiAgICBwcmludGYoIkZvaSBlc2NvbGhpZGEgYSBtdWx0aXBsaWNhY2FvOlxuXG4iKTsKICAgIGRvIHsKICAgICAgICBwcmludGYoIkluZm9ybWUgb3MgdmFsb3JlcyBkZXNlamFkb3MgZSAwICh6ZXJvKSBwYXJhIGNvbmNsdWlyOiIpOwogICAgICAgIHNjYW5mKCIlZCIsICZ2YWxvcik7CiAgICAgICAgaWYgKHZhbG9yID09IDApIGJyZWFrOwogICAgICAgIG11bHQgKj0gdmFsb3I7CiAgICB9IHdoaWxlICh2YWxvciAhPSAwKTsKICAgIHJldHVybiBtdWx0Owp9CgppbnQgbWFpbigpIHsKICAgIGludCBvcCA9IDAsIHJlc3VsdDsKICAgIHByaW50ZigiSW5mb3JtZSBhIG9wZXJhY2FvIGRlc2VqYWRhIHNvbWEoMSkgb3UgcHJvZHV0byAoMik6Iik7CiAgICBzY2FuZigiJWQiLCAmb3ApOwogICAgaWYgKG9wID09IDEpIHJlc3VsdCA9IHNvbWEoKTsKICAgIGVsc2UgaWYgKG9wID09IDIpIHJlc3VsdCA9IG11bHQoKTsKICAgIHByaW50ZigiTyByZXN1bHRhZG8gZm9pOiAlZCIsIHJlc3VsdCk7Cn0KCi8vaHR0cHM6Ly9wdC5zdGFja292ZXJmbG93LmNvbS9xLzkzMDMyLzEwMQ==