Respostas
respondido por:
1
Como faz tempo que não mexo com portugol, não me lembro muito bem dos códigos mas vou botar aqui uma simulação em java
inteiro S=0;
inteiro S2=0;
S=1/1+3/2+5/3+7/4+99/50;
S=37*38/1+36*37/2+35*36/3+1*2/37;
System.out.println("Primeira expressão: "+S+"\nSegunda expressão: "+S2);
os 3 pontinhos no meio do cálculo eu não sei bem o objetivo mas...
inteiro S=0;
inteiro S2=0;
S=1/1+3/2+5/3+7/4+99/50;
S=37*38/1+36*37/2+35*36/3+1*2/37;
System.out.println("Primeira expressão: "+S+"\nSegunda expressão: "+S2);
os 3 pontinhos no meio do cálculo eu não sei bem o objetivo mas...
respondido por:
1
em linguagem C
#include<stdio.h>
int main(){
printf("S_1 = %.2lf\n", quest_1(0,1,1,50));
printf("S_2 = %.2lf\n\n", quest_2(0,37,1,37));
getc();
return 0;}
/*as funções abaixo funcionam de forma semelhante a estrutura de repetição "for" tanto que pode ser feito da seguinte maneira:
-para a questão 1:
for(double i=1; i<=50; i++){
S+=(num/i);
num+=2; }
sendo que a variável num do tipo double tem valor inicial 1 e a S de mesmo tipo tendo 0 como valor inicial
-------------------------------------------------
-para a questão 2:
for(double i=1; i<=37; i++){
S+=( ( num*(num-1) )/i );
num--;}
sendo as variáveis num e S do tipo double e seus valores iniciais são 37 e 0 respectivamente
-----------------------------
no referente as funções, cada variável dentro dos parâmetros terá o seu valor declarado na main. O exemplo é a própri declaração já feita como a:
quest_1(0, 1, 1, 50)
e os valores serão atribuido as variáveis de posição corespondente:
quest_1(0, 1, 1, 37) -> declarada na main
double quest_1(double S, double num, double div, double fim) -> função em si
vendo de maneira mais clara, seria assim:
S = 0;
num = 1;
div = 1;
fim = 1;
*/
double quest_1(double S, double num, double div, double fim){
if(div<=fim) return quest_1(S+(num/div), num+2, div+1, fim);
return S; }
double quest_2(double S, double num, double div, double fim){
if(div<=fim) return quest_2(S+((num*(num-1))/div), num-1, div+1, fim);
return S; }
#include<stdio.h>
int main(){
printf("S_1 = %.2lf\n", quest_1(0,1,1,50));
printf("S_2 = %.2lf\n\n", quest_2(0,37,1,37));
getc();
return 0;}
/*as funções abaixo funcionam de forma semelhante a estrutura de repetição "for" tanto que pode ser feito da seguinte maneira:
-para a questão 1:
for(double i=1; i<=50; i++){
S+=(num/i);
num+=2; }
sendo que a variável num do tipo double tem valor inicial 1 e a S de mesmo tipo tendo 0 como valor inicial
-------------------------------------------------
-para a questão 2:
for(double i=1; i<=37; i++){
S+=( ( num*(num-1) )/i );
num--;}
sendo as variáveis num e S do tipo double e seus valores iniciais são 37 e 0 respectivamente
-----------------------------
no referente as funções, cada variável dentro dos parâmetros terá o seu valor declarado na main. O exemplo é a própri declaração já feita como a:
quest_1(0, 1, 1, 50)
e os valores serão atribuido as variáveis de posição corespondente:
quest_1(0, 1, 1, 37) -> declarada na main
double quest_1(double S, double num, double div, double fim) -> função em si
vendo de maneira mais clara, seria assim:
S = 0;
num = 1;
div = 1;
fim = 1;
*/
double quest_1(double S, double num, double div, double fim){
if(div<=fim) return quest_1(S+(num/div), num+2, div+1, fim);
return S; }
double quest_2(double S, double num, double div, double fim){
if(div<=fim) return quest_2(S+((num*(num-1))/div), num-1, div+1, fim);
return S; }
Perguntas similares
6 anos atrás
6 anos atrás
6 anos atrás
9 anos atrás
9 anos atrás
9 anos atrás
9 anos atrás