insyspower
Power Member
Boas Pessoal !
tenho algumas duvidas, já fiz o Exercicio 2 mas estou com duvidas no exercicio 2.1 e 3, se alguem puder dar uma ajuda, e muito bem vinda
Exercício 2
(leitura de valores, funções, ciclos e condições)
Escreva um programa que leia dois valores numéricos (inteiros) a partir do teclado e
que execute a função minha_divisao (que deverá implementar). Essa função deverá
imprimir o resultado da divisão inteira do primeiro valor pelo segundo assim como o
respectivo resto (pode usar o operador %). O programa deverá repetir o procedimento
(ler valores e executar função) até que o valor introduzido para o dividendo seja 0.
Para ler dados introduzidos pelo utilizador pode usar a já bem conhecida função
int scanf (const char *template, ...)
Exemplo:
int a;
scanf(“%d”, &a);
Crie o respectivo executável e teste o seu programa.
Exercício 2.1 – Altere o seu programa de forma que os valores do quociente e do resto
sejam “retornados” para o programa principal. A impressão desses valores deverá ser
feita no programa principal: void minha_divisao(int, int, int *, int *).
Exercício 3
(cadeias de caracteres , parâmetros da função main())
Modifique o programa anterior de forma a que quando forem indicados dois valores na
linha de comando (por exemplo, “./divisao 10 2”) o programa execute a função definida
anteriormente, usando os valores indicados na linha de comando, e termine a sua
execução. Para esse fim, a função main() deverá ter os argumentos definidos tal como
indicado abaixo:
int main(int argc, char* argv[])
Para converter uma string para um inteiro pode usar a seguinte função (execute o
comando “man strtol”
para obter informações sobre o funcionamento da função):
long int strtol (const char *string, char **tailptr, int base)
Crie o respetivo executável e teste o seu programa.
Fiz o Exercicio 2 desta maneira:
o exercicio 2, parece estar bem, agora tenho duvidas no exercicio 2.1 e 3
cumprimentos
tenho algumas duvidas, já fiz o Exercicio 2 mas estou com duvidas no exercicio 2.1 e 3, se alguem puder dar uma ajuda, e muito bem vinda
Exercício 2
(leitura de valores, funções, ciclos e condições)
Escreva um programa que leia dois valores numéricos (inteiros) a partir do teclado e
que execute a função minha_divisao (que deverá implementar). Essa função deverá
imprimir o resultado da divisão inteira do primeiro valor pelo segundo assim como o
respectivo resto (pode usar o operador %). O programa deverá repetir o procedimento
(ler valores e executar função) até que o valor introduzido para o dividendo seja 0.
Para ler dados introduzidos pelo utilizador pode usar a já bem conhecida função
int scanf (const char *template, ...)
Exemplo:
int a;
scanf(“%d”, &a);
Crie o respectivo executável e teste o seu programa.
Exercício 2.1 – Altere o seu programa de forma que os valores do quociente e do resto
sejam “retornados” para o programa principal. A impressão desses valores deverá ser
feita no programa principal: void minha_divisao(int, int, int *, int *).
Exercício 3
(cadeias de caracteres , parâmetros da função main())
Modifique o programa anterior de forma a que quando forem indicados dois valores na
linha de comando (por exemplo, “./divisao 10 2”) o programa execute a função definida
anteriormente, usando os valores indicados na linha de comando, e termine a sua
execução. Para esse fim, a função main() deverá ter os argumentos definidos tal como
indicado abaixo:
int main(int argc, char* argv[])
Para converter uma string para um inteiro pode usar a seguinte função (execute o
comando “man strtol”
para obter informações sobre o funcionamento da função):
long int strtol (const char *string, char **tailptr, int base)
Crie o respetivo executável e teste o seu programa.
Fiz o Exercicio 2 desta maneira:
Código:
#include<stdio.h>
int main()
{
int n1,n2,resto;
float divisao;
do
{
printf("digite o primeiro valor \n"); // dividendo
scanf("%d",&n1);
printf("digite o segundo valor \n"); //divisor
scanf("%d",&n2);
void minha_divisao(int n1, int n2)
{
if (n2!=0)
{
divisao=n1/n2; // quociente
printf(" o resultado da divisao e = %.2f \n",divisao);
resto=n1%n2; //resto
printf(" o resto e = %d \n",resto);
}
else printf(" erro denominador nao pode ser zero ! \n");
}
minha_divisao(n1,n2);
}while (n2==0);
system("pause");
return(0);
}
o exercicio 2, parece estar bem, agora tenho duvidas no exercicio 2.1 e 3
cumprimentos