Ieybdcbd Çcldcf
-
Posts
9 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Ieybdcbd Çcldcf
-
-
#include <stdio.h> #include <stdlib.h> int main(){ int soma= 0; int num= 0; float div= 0; while(soma <=100){ scanf( "%d", &num ); soma= num+soma; div= num/soma; } printf( " = %d\n", soma); div= (float)soma/(float)num; printf("%.2f\n", div); return 0; }
Boa Tarde
Tenho de fazer um algoritmo que:
leia N números inteiros até que a soma dos números digitados seja maior que 100, ao final divida o valor da soma pelo primeiro número digitado (se o primeiro número for zero, faça a divisão pelo número 10).
Até a soma consegui fazer, mas não tenho ideia de como dividir a soma dos números digitados pelo, primeiro numero digitado. preciso de ajuda ou uma dica para dividir a soma de N números digitados pelo primeiro numero digitado. desde ja agradeço.
-
17 horas atrás, Lucca Rodrigues disse:
@Ieybdcbd Çcldcf O padrão é a main() retornar um int, por isso que normalmente a gente vê um "return 0" no final da main(), que significa que a execução foi bem sucedida.
"N" então é um inteiro positivo, não double como você declarou. O enunciado pede para usar o tipo inteiro:
Por que colocou 1.5 antes do especificador?
Esse "1" não vai fazer diferença, isso é só pra deixar espaços à esquerda caso o mesmo seja um número maior que a quantidade de caracteres do ponto flutuante que você está imprimindo.
Tentou mudar o tipo de double pra int, e usar o especificador d em vez de lf na scanf()? É só isso o que você tem que fazer a mais pra "funcionar", mas é bom fazer as mudanças que eu mencionei.
Tente se acostumar a usar nomes de variáveis mais autoexplicativos, é fácil e poupa tempo.
Da uma olhada aí:
#include <stdio.h> #include <locale.h> int main() { setlocale(LC_ALL, "Portuguese"); int N; int sinal = 1; double denominador = 1; double PI = 0; printf("Insira a quantidade de termos: "); scanf("%d", &N); for(int i = 0; i < N; i++){ PI += sinal * (4 / denominador); sinal = -sinal; denominador += 2; } printf("\nO valor de PI calculado é: %.5lf\n", PI); return 0; }
Ok. Obrigado.
- 1
-
#include <stdio.h> #include <stdlib.h> void main() { double n; double i; double x = 1; double pi = 0; scanf("%lf",&n); for(i = 1; i <= (n * 2); i += 2){ pi = pi + x * (4 / i); x = -x; } printf("\n %1.5lf\n", pi); }
Boa tarde
preciso de ajuda novamente.
Estou aprendendo o programar em c e tenho de fazer Faça um algoritmo que realize o cálculo de PI para N termos informados pelo usuário. Sendo PI = (4/1)-(4/3)+(4/5)-(4/7)+(4/9)... e a entrada: valor da quantidade de termos será lido em linha, sendo este valor composto por um número inteiro (int), Imprimir o valor de PI com 5 casas decimais. Só consegui a saída como se pede usando "double" não consigo com int. Preciso de ajuda para fazer n ser "int" e dar o mesmo resultado. Desde ja agradeço.
- 1
-
19 horas atrás, arfneto disse:
Se está usando esse Dev-C++ ou o Code::Blocks quase certamente tem o gcc instalado... Esses IDE --- sim, IDE é singular --- não são compiladores e em geral incluem uma versão meio antiga de gcc. Não precisa necessariamente instalar outra
Não sei o que pode ser. Erro de download é raro numa coisa tão usada. De que endereço tentou baixar isso? Qual versão tem instalada? Em geral procure por uma pasta chamada MinGW no seu computador e lá tem uma pasta bin onde tem um arquivo gcc.exe que, sem psurpresas, é o compilador...
E aí rode gcc -v e verá a versão que tem. Acho que qualquer coisa maior de 7 estará bem. A atual acho que é 10.2
Seguindo seu conselho aprendi a configurar o DEV e ele rodou o código que o AdrianoSiqueira tinha sugerido. Novamente agradeço as dicas.
- 2
-
12 horas atrás, arfneto disse:
Não "deu certo" porque fez isso ou deixou de fazer isso.
E está errado. Levou muitos anos para que isso fosse incorporado '`a linguagem C. Mas foi, e há uns 40 anos atrás. Declare as variáveis de controle do loop DENTRO do for.
Em especial uma variável com o nome ingênuo de "i", que pode ser usado linhas depois já que ela declarada como fez vai ficar "viva" por todo o programa. É uma ideia ruim. Bem ruim. E sempre vai cair na sua cabeça.
Faça como @AdrianoSiqueira recomendou. Se seu compilador não aceita, use as opções corretas. Isso é dos anos 80, e o tempo passou para todos incluindo C.
Se seu IDE não aceita, mude. Se não sabe como configurar, aprenda. É essencial se quer fazer algo útil programando computadores. Que tal algo simples como:
gcc -std=c17 -Wall -Wextra -O3 programa.c
É um mínimo seguro para quem está começando...
Quanto a isso:
Leu o manual? Tem um livro? Seu IDE mostra os parâmetros das funções?
SEMPRE teste o retorno de scanf(). Qual o propósito de continuar o programa se não ler nada?
int scanf(const char *format, ...)
pois é. Retorna um int que você não testou.
if (x <= 0) { printf("Numero invalido \n"); }
E ainda teve a ideia de ver se não veio algo negativo, só que continuou o programa mesmo assimE diz que deu certo. Mas não deu. Sugiro corrigir no mínimo isso
Obrigado pelas dicas. Como disse estou aprendendo, o exercício pede que calcule o quadrado de 1 a N sendo N digitado pelo usuário e imprima numero invalido se o numero digitado for menor que 1. O resultado deve ser apresentado em coluna como dito no inicio. Estou usando o DEV C, pois pareceu ser o mais recomendado para linguagem C, confesso que não tenho conhecimento sobre o assunto. Tentei instalar o GCC, consigo baixar o exe, mas na instalação da erro de download. de qualquer forma tenho aprendido com as dicas que recebo aqui. Muito obrigado pela disposição.
14 horas atrás, AdrianoSiqueira disse:Estou usando o DEV C, vou ver esse CodeBlocks. Muito obrigado pela disposição e pelas dicas
- 1
-
2 horas atrás, Ieybdcbd Çcldcf disse:
Valeu Adriano. Obrigado pelas dicas. Como estou aprendendo, preciso perguntar se "int" pode entrar no for, não seria uma biblioteca reservada, no modelo que voce enviou o int esta dentro do for?
Tirei int do for e declarei i como variável e deu certo obrigado
1 minuto atrás, Ieybdcbd Çcldcf disse:Tirei int do for e declarei i como variável e deu certo obrigado
Deu certo agora:
#include <stdio.h>
#include <stdlib.h>int main() {
int x = 0;
int qdr = 0;
int i= 0;scanf("%d", &x);
if (x <= 0){
printf("Numero invalido \n");}
for (i = 1; i <= x; i++) {
qdr = i * i;
printf("O quadrado de %d eh %d \n", i, qdr);
}return 0;
} -
Em 01/01/2021 às 18:15, AdrianoSiqueira disse:
Algumas observações:
- Sempre inicialize todas as suas variáveis, independente se elas receberão um valor logo em seguida.
- As linhas são de graça, pode usar a vontade. Procure criar uma variável por linha, isso facilita a leitura do código.
- Atente-se à indentação, um código organizado é mais fácil de ler e corrigir.
Sobre seu código, ele está bem confuso, procure fazer o simples:
#include <stdio.h> #include <stdlib.h> int main() { int x = 0; int qdr = 0; printf("Digite um numero: "); scanf("%d", &x); if (x <= 0){ printf("Numero invalido \n"); return 1; } for (int i = 1; i <= x; i++) { qdr = i * i; printf("O quadrado de %d é %d \n", i, qdr); } return 0; }
Valeu Adriano. Obrigado pelas dicas. Como estou aprendendo, preciso perguntar se "int" pode entrar no for, não seria uma biblioteca reservada, no modelo que voce enviou o int esta dentro do for?
-
#include <stdio.h> #include <stdlib.h> int main() { int i, p, x, qdr; scanf("%d", &x); if (x<=0){ printf("Numero invalido\n"); } for (i=1; i<=x; i++) { qdr=1; for(p=1; p<=2; p++){ qdr= i * qdr; printf(" O quadrado de %d é" , qdr); } printf(" \n"); } return 0; }
Boa tarde. Estou aprendendo a programar em C e tentando fazer um programa para apresentar o quadrado de 1 até N, mas estou tendo problemas na saída, que ao digitar 3 tem de ser do tipo:
O quadrado de 1 eh 1
O quadrado de 2 eh 4
O quadrado de 3 eh 9
Mas o meu esta saindo:
O quadrado de 1 � O quadrado de 1 �
O quadrado de 2 � O quadrado de 4 �
O quadrado de 3 � O quadrado de 9 �
Como posso resolver?
Muito grato por ajudarem.
Fiz o código dessa forma:
#include <stdio.h>
#include <stdlib.h>int main() {
int i, p, x, qdr;
scanf("%d", &x);
if (x<=0){
printf("Numero invalido\n");
}
for (i=1; i<=x; i++) {
qdr=1;
for(p=1; p<=2; p++){
qdr= i * qdr;
printf(" O quadrado de %d é" , qdr);
}
printf(" \n");
}
return 0;
}- 1
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
Ao final divida o valor da soma pelo primeiro número digitado
em C/C#/C++
Postado
Consegui fazer até aqui, mas não esta como pedido no enunciado, pois não sei como fazer a divisão pelo primeiro numero.