Ir ao conteúdo
  • Cadastre-se

fernandobrito

Membro Júnior
  • Posts

    11
  • Cadastrado em

  • Última visita

Tudo que fernandobrito postou

  1. Dado um número n inteiro e positivo, dizemos que n é perfeito se n for igual à soma de seus divisores positivos diferentes de n. Construa um programa que leia um número inteiro n, apresenta a soma dos divisores de n e verifica se o número informado é perfeito ou não. Escreva uma função somaDivisores que receba como parâmetro um número inteiro e retorne a soma dos divisores desse número excluindo o próprio número como divisor de si mesmo. Seu programa deve chamar a função somaDivisores para resolver o problema. Entrada O programa deve ler um número inteiro n. Saída O programa deve apresentar uma linha contendo o texto: "n = d1 + d2 + d3 + ... + dk = x (MENSAGEM)", onde n é o número lido, di são os divisores de n em ordem crescente, x é a soma dos divisores e MENSAGEM é a mensagem "NUMERO PERFEITO"ou "NUMERO NAO E PERFEITO". Observações Suponha que o usuário sempre fornecerá um número maior que 1. Exemplo Entrada 6 Saída 6 = 1 + 2 + 3 = 6 (NUMERO PERFEITO) Entrada 12 Saída 12 = 1 + 2 + 3 + 4 + 6 = 16 (NUMERO NAO E PERFEITO) Codigo por enquanto: #include<stdio.h> int somadivisores (int numero) { } main () { int numero; scanf("%d",&numero); int i; int divisor=1; int resto; int somad; for (i=0;i<numero;i++) { resto = numero%divisor; somad = somad+divisor; if ( resto == 0 ){ if (somad == numero) { } } divisor++; } } Ainda não comecei a fazer a função porque parei na lógica (essa saída dos divisores, como vou colocar?), queria ajuda pra finalizar minha lógica. Obs: Faço introdução a programação em C, ou seja, não vou entender comandos avançados.
  2. Ah entendi, praticamente só colocar a lógica dentro da função. Porque voce usou o return Acograu? Alias, sem o acograu que voce declarou também daria certo?
  3. Ex: Um certo aço é classificado de acordo com o resultado de três testes abaixo, que devem determinar se o mesmo satisfaz às especificações: 1. Conteúdo de Carbono abaixo de 7. 2. Dureza Rockwell maior do que 50. 3. Resistência à tração maior do que 80.000 psi. Ao aço é atribuído o grau “10” se passar por todos os testes; grau “9” se passar somente nos testes 1 e 2; grau “8” se passar no teste 1 apenas; grau “7” caso o aço não se enquadre nos graus, “10”, “9”, e “8”. Escreva uma função que receba como parâmetros o valor de conteúdo de carbono, o valor da dureza e o valor de resistência à tração de um aço e retorne o grau do aço. Desenvolver um programa que leia o conteúdo do carbono (CC), a dureza Rockwell (DR) e a resistência à tração (RT), chame a função especificada acima e imprima a classificação do aço. #include<stdio.h> main () { int c,dr,rt,grau; scanf("%d",&c); scanf("%d",&dr); scanf("%d",&rt); if (c<7 && dr>50 && rt>80000) { printf("ACO DE GRAU = %d\n",10); } if (c<7 && dr>50 && rt<=80000) { printf("ACO DE GRAU = %d\n",9); } if (c<7 && dr<=50 && rt<=80000) { printf("ACO DE GRAU = %d\n",8); } if (c>=7 && dr<=50 && rt<=80000) { printf("ACO DE GRAU = %d\n",7); } if (c>=7 && dr>50 && rt>80000) { printf("ACO DE GRAU = %d\n",7); } if (c>=7 && dr<=50 && rt>80000) { printf("ACO DE GRAU = %d\n",7); } } Gostaria de saber como faço esse ex com funções, preciso aprender pois vou ter uma prova e vai ser obrigatório usar funções em todos os exercícios.
  4. (IME-USP) Sabe-se que um número da forma n ao cubo é igual a soma de n ímpares consecutivos. Exemplo: 1 ao cubo = 1, 2 ao cubo = 3 + 5, 3 ao cubo = 7 + 9 + 11 e 4 ao cubo = 13 + 15 + 17 + 19. Dado m, determine os ímpares consecutivos cuja soma é igual a n 3 para n assumindo valores de 1 a m. Entrada O programa deve ler um número inteiro maior que zero. Saída O programa deve apresentar m linhas com a seguinte mensagem: "k ∗ k ∗ k = x1 + x2 + . . . + xk", onde k = 1, 2, . . . , m e xi é a sequência de números ímpares consecutivos. Exemplo Entrada 4 Saída 1*1*1 = 1 2*2*2 = 3+5 3*3*3 = 7+9+11 4*4*4 = 13+15+17+19 #include<stdio.h> #include<math.h> main () { int m,n,i,impar1,impar2; scanf("%d",&m); for (i=0;i<=m;i++) { for(n=1;n<=m;n++) { if (impar1%2==!0) { if (m*m*m == impar1+(impar2+2)) { printf("%d*%d*%d = %d+%d\n",n,n,n,impar1,impar2+2); }}}}} Alguém me ajuda com a resolução desse exercício por favor, professor passou pra treinar exercícios com mais de um laço de repetição e to confundindo bastante na hora da lógica. Obs: Lembrando que não entrei em vetor ainda e estou pegando a matéria de introdução a programação.
  5. Escreva um programa em linguagem C que leia um número qualquer n de 0 a 9 e imprima na tela a tabuada de soma, subração, multiplicação e divisão desse número para K valores, iniciando em i em incrementos de s. Exemplo Entrada 3 1 2 0.1 Saída Tabuada de soma: 3.00 + 1.00 = 4.00 3.00 + 1.10 = 4.10 Tabuada de subtracao: 3.00 - 1.00 = 2.00 3.00 - 1.10 = 1.90 Tabuada de multiplicacao: 3.00 x 1.00 = 3.00 3.00 x 1.10 = 3.30 Tabuada de divisao: 3.00 / 1.00 = 3.00 3.00 / 1.10 = 2.73 Travei nesse exercício e não to conseguindo fazer a lógica de K valores, help. #include<stdio.h> #include<stdlib.h> #include<math.h> main () { float n,i,o,k,s,incremento; scanf("%f",&n); scanf("%f",&o); scanf("%f",&k); scanf("%f",&s); if (n>=0 && n<=9) { while(k--) { incremento = o+s ; printf("Tabuada de soma:\n %.2f + %.2f = %.2f\n %.2f + %.2f = %.2f\n",n,o,n+o,n,o,n+incremento); }
  6. Desenvolver um algoritmo para ler um número x, calcular e imprimir o valor de y de acordo com as condições abaixo: x; se x < 1; y = 0; se x = 1; x²; se x >1; #include<stdio.h> #include<math.h> main () { int x,y; scanf("%d",&x); if (x<1) { y=x; printf("Y = %d\n",y); } if (x=1){ y=0; printf("Y = %d\n",y); } if (x>1) { y= pow(x,2); printf("Y = %d\n",y); } }
  7. Supondo que a população de um país A seja de a habitantes com uma taxa anual de crescimento de 3% e que a população de um país B seja de b habitantes, com uma taxa anual de crescimento de 1,5%, fazer um algoritmo que calcule e escreva o número de anos necessários para que a população do país A ultrapasse ou iguale a população do país B, mantidas essas taxas de crescimento. Resposta até agora: #include<stdio.h> main () { float A,B,A1,B1; int anos=0; scanf("%d",&A); scanf("%d",&B); while(A1<B1) { A1= A+(A*0.03); B1= B+(B*0.015); anos++; } printf("%d",anos); Dei uma travada nesse exercício, se alguém puder ajudar agradeço.
  8. Tenho um exercício onde pede pra fazer um calculo para cada tipo de conta (R de residencial,C de comercial e I de industrial), nunca fiz exercício com char e getchar. Quero saber como eu vou colocar pra ler esses caracteres R,C e I que vão ser colocados na entrada(só um deles vai ser colocado), dai depois vou fazer um if e em cada um deles faço uma conta diferente.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!