Ir ao conteúdo
  • Cadastre-se

devair1010

Membro Pleno
  • Posts

    6.252
  • Cadastrado em

  • Última visita

Tudo que devair1010 postou

  1. @Rayssa Fernandes o visualG é assim mesmo , não mostra o erro exato não , mas diz Que tem um erro e é você que tem de descobrir Qual é , e nesse caso o erro real é que ele não encontrou a variável imc , pois a que tem é imc_ com underline , e para inserir os valores pode ser com ponto decimal ou vírgula , que funciona bem do mesmo jeito : algoritmo "calculoimc" var a, imc_: real m: inteiro inicio escreval ("massa (kg):") leia (m) escreval ("altura (metros):") leia (a) imc_ <- m/(a^2) se (imc_ > 18.5) e (imc_ <25) entao // a var eh imc_ com underline escreval ("seu imc é", imc_:5:2,"voce está no peso ideal") senao escreval ("seu imc é", imc_:5:2,"voce não esta no seu peso ideal") fimse fimalgoritmo
  2. @lola635 oi , você já tem alguma coisa feita sobre esse exercício ?
  3. @rafael_carmo esse método de Ordenação de vetores não ê o bubbleSort e sim outro método que chamo de AnchorSort , pois o número vai direto para o fundo , e não como Bolhas flutuantes , e outra coisa é que você está começando a ordenação a partir da posição 1 do vetor , mas as posições começam em zero , : for( j=0; j<4; j++ ) /// Possibila que as exercuções de { /// ordenação aconteça n vezes /// Compara e ordena até o penúltimo /// elemento já que o elemento seguinte /// não terá com quem ser comparado for( i=j+1; i<5; i++ ) /// Ordenando o vetor { if( vetor[i] > vetor[j] ) /// esse não eh o BubbleSort e sim o AnchorSort { auxiliar = vetor[i] ; /// Guarda a copia do elemento na posição i vetor[i] = vetor[j] ; /// Transfere o valor do menor para o que guarda o maior vetor[j] = auxiliar ; /// O que antes tinha o valor menor recebe o valor maior } } }
  4. @luizpx41 Olá , você postou esse código e não disse nada e nem pediu ajuda , mas esse seu código não funciona por que o Loop For está com erro , pois o loop for tem dentro dos parênteses um laço de repetição while , for(x = 0 ; x == n ; x++) /// inicia a variAvel x ; /// a condiCAo De parAda : enquanto x < n ; /// incrementa a variAvel x = x + 1 ; { /// faCa ... /// o cOdigo } /// Que estA dentro dessas chaves e assim do Modo como está , o que estiver dentro desse loop não vai ser executado nenhuma vez , pois se x é igual a zero , e n tem um valor diferente , ele com certeza não será igual e já pula para o Final do loop , e então corrigindo isso seu códiGo funciona Bem . e como Bem explicado nesse site Números Naturais Se um número é inteiro e positivo, podemos dizer que é um número natural.: #include <stdio.h> #include <stdlib.h> #include <math.h> #define espaCos printf("\n\n\n"); int main() { int x = 0,n = 0; printf("Informe um valor para definir um ponto de partida: "); scanf("%d", &x); printf("Informe um valor para condicao de parada: "); scanf("%d", &n); espaCos for(x = 0 ; x < n ; x++) { printf("_%d_\n",x); } espaCos return 0; }
  5. @rafael_carmo seu código corrigindo ficou assim : /// https://www.clubedohardware.com.br/forums/topic/1606266-qual-%C3%A9-o-erro-no-meu-c%C3%B3digo-eu-estou-programando-em-c/ #include <stdio.h> // Funções de entrada e saída #include <stdlib.h> // Função padrão #include <windows.h> /// Adicionar novas bibliotecas acima de acordo com necessidade /** * Espaço destinado a transcrição do enunciado para não ficar olhando toda hora a lista * Faça um programa em C que copie o conteúdo de um vetor de 10 posições de inteiro em * um segundo vetor e imprima este último. ***/ int pausa(); int main() /// Função obrigatória { /// Declaração de constantes ou variáveis int vetor1[10] = {10,9,8,7,6,5,4,3,2,1}; int vetor2[10]; int i; /// Fim for( i=0; i<=9; i++ ) { /// Copiando o vetor1 para o vetor2 vetor2[i] = vetor1[i]; /// i++; } /// Fim /// Saida de dados for( i=0; i<10; i++ ) { printf("\nVetor2[%d] = %3d", i , vetor2[ i ] ); } /// Exibe mensagem na tela pausa(); /// Apenas no Windows /// Pausa o programa para que ele não /// feche inesperadamente assim como o /// comando "getchar();" printf("\n\n\n"); return 0; } /// Fim int pausa() { printf("\n\nTecle !\n"); FlushConsoleInputBuffer(GetStdHandle(STD_INPUT_HANDLE)); /// funCOes da API do windows WaitForSingleObject(GetStdHandle(STD_INPUT_HANDLE), INFINITE); /// funCOes da API do windows return 0; }
  6. @YMos leitura do teclado apresenta alguns bug's , e essa função getchar() e a fgetc() funciona em alguns casos e também fflush , mas nem sempre , nesse link de 2014 tem informações sobre limpar o buffer do teclado : Limpar Buffer
  7. @YMos seria melhor postar seu código no Formate de texto , assim copia se com mais facilidades e já colar no editor do compilador para testar , e parece que essa sua Função " limpa_entrada " esteja com problemas , pois o fgets já pega todos os caracteres do buffer e até o newLine assim não sobra nada , e o getchar fica esperando digitar algo e teclar enter para continuar , e sem essa função seu código funciona bem : /// https://www.clubedohardware.com.br/forums/topic/1606349-sou-iniciante-meu-programa-em-c-n%C3%A3o-l%C3%AA-minha-vari%C3%A1vel-corretamente/ #include <stdio.h> #include <string.h> #define espacos printf("\n\n\n"); int limpar_eentrada(); int main() { char nome1[50]; char nome2[50]; /// vetor de caracteres com espaco para 49 char nome3[50]; /// caracteres e mais um espaCo para o finalizar de printf("Nome1 "); /// string's '\0' ou simplesmente 0 fgets(nome1 , 49, stdin ); /// por isso 49 e não 50 /// nome1[strlen(nome1) - 1] = 0; esse aqui remove o newLine strtok(nome1,"\n"); /// esse tamBem remove o newLine printf("Nome2 "); /// limpar_eentrada(); /// essa funcAo getchar pega o que esta nu buffer de entrada fgets(nome2 , 49, stdin ); /// e se não tiver naDa , fica esperando digitar algo e teclar enter /// nome2[strlen(nome2) - 1] = 0; pois o fgets pega tudo que esta no buffer e não sobra nada strtok(nome2,"\n"); printf("Nome3 "); /// limpar_eentrada(); fgets(nome3 , 49, stdin ); /// nome3[strlen(nome3) - 1] = 0; strtok(nome3,"\n"); espacos printf("Bem Vindo %20s Um Grande Prazer Te ConhecEr . . . !\n",nome1); printf("Bem Vindo %20s Um Grande Prazer Te ConhecEr . . . !\n",nome2); printf("Bem Vindo %20s Um Grande Prazer Te ConhecEr . . . !\n",nome3); espacos return 0; } int limpar_eentrada() { char c = ' '; while((c = getchar()) != '\n' && c != EOF ){} }
  8. @Josa Alves esse cordão não é de LEDs , e sim de lâmpadas , por isso esquenta , e os leds tem o brilho de acordo com seu tipo , existe os de alto brilho , e os difusos , que são bem fracos , e também eles não aguentam nem muita tensão nem corrente , assim o máximo de corrente elétrica que se pode conectar neles é de 4 volts e 30 miliamperes , ou pode ser miores mas precisa de resistores para que fiquem nesse limite , e assim se quer muito brilho , escolha os de alto brilho , http://leds
  9. @luquinhas44 seu código modificado poderia ser assim : /** * algoritmo deve ler * - O número da carteira de motorista (de 1 a 4327) * - Número de multas; * - Valor da cada uma das multas. * Deve ser impresso o valor da dívida de cada motorista * ao final da leitura o total de recursos arrecadados (somatório de todas as multas). * imprimir o número da carteira do motorista que obteve o maior número de multas. ***/ programa { funcao inicio() { inteiro c = 1 inteiro max_carteiras = 4327 inteiro numero_multas = 0 inteiro num_carteira = 0 inteiro auxiliar = 0 real valor_multa = 0.0 real multas_total = 0.0 real arrecadacao = 0.0 inteiro cart_mais_multada = 0 inteiro maior_carteira = 0 inteiro flg = 0 caractere sair = 'n' faca { flg = 0 enquanto ( flg == 0 ) { flg = 1 escreva ("numero da carteira de motorista ( 1 até 4327 ) ") leia( num_carteira ) se( ( num_carteira < 1 ) ou ( num_carteira > 4327 ) ) { flg = 0 } } se ( num_carteira > 0 ) { escreva ("Digite o nÚmero de multas: ") leia(numero_multas) se( auxiliar < numero_multas ) { // oBtem o nUmero da carteira auxiliar = numero_multas // com maior nUmero de multas cart_mais_multada = num_carteira } escreva ("Digite o valor da multa: ") leia(valor_multa) multas_total = numero_multas * valor_multa escreva ("O total de multas da carteira ",num_carteira," é: ", multas_total,"\n") arrecadacao += multas_total } escreva ("continuar o programa S / N " )] leia(sair) }enquanto ( sair == 's') escreva ("A Carteira Com Maior Número De Multas é: ",cart_mais_multada , "\n" ) escreva("Com ", auxiliar , " Multas . . . !\n\n\n") } } veja se consegue colocar a arrecadação da blitz .
  10. @luquinhas44 precisa usar uma ou mais variáveis para armazenar o número da carteira que tiver mais multas , e no decorrer do programa vai atualizando essa mesma variáveL , e no Final se saberá Qual . e no seu outro poste , desse mesmo exercício , tem um exemplo .
  11. @wbm01 você pode ativar o intellicense no menu ferramentas / opções / Editor de Texto / avançado e também intellicense , conforme explicado nesse link da própria Microsoft : https://docs.microsoft.com/pt-br/visualstudio/ide/visual-cpp-intellisense?view=vs-2022
  12. @luquinhas44 você Quer colocar uma opção "S / N" , use string que no portugol studio é chamada de cadeia , e se você já tem um código sobre esse exercício , poste ele aqui e ajudaremos se ainda precisar ..
  13. @Michael Oliveira Damasceno uma imagem não se pode ser copiada como text , que seria melhor mesmo , e se você tem um código desse exercício feito na linguaGem c , então poste ele aqui e ajudaremos se ainda precisar .
  14. @adriantuler não vi erros nesse código : s = 'SIM' d = 0 while True: # enquanto não houver break volume = int(input("digite o volume em ml que deseja: de 300ml a 5000 ml ")) try: int(volume) except ValueError as err: print('Formato errado') continue print("b = Basica ( feijão + paiol + costelinha") print("p = Premium ( Feijão + paiol + costelinha + partes de porco") print("s = Suprema ( Feijão + paiol + costelinha + partes de porco + charque + calabresa + bacon ") print("f = Finalizar ") total = 0 feijoada = str(input("digite a qual feijoada desejada: ")).upper() if feijoada == "F": break; vol = volume * 0.08 if float(volume) < 300 or float(volume) > 500: print("opção invalida:") continue if feijoada == "B": d = vol # * 1 huuum ! fala seriO . if feijoada == 'P': d = vol * 1.25 if feijoada == "S": d = vol * 1.50 while True: print(" 0 - não desejo mais nenhnum acompanhamento: (encerrar pedido)") print(" 1 - 200g de arroz") print(" 2 - 150g de farofa especial") print(" 3 - 100g de couve cozida") print(" 4 - 1 de laranja : ") acompanhamento = int(input("deseja algum acompanhamento:")) total = float(d) + total if acompanhamento == 0: print(" o valor do total do pedido foi {}R$ ".format(total)) total = 0 print(total) break if acompanhamento == 1: total = total + 5 continue if acompanhamento == 2: total = total + 6 continue if acompanhamento == 3: total = total + 7 continue if acompanhamento == 4: total = total + 3 continue
  15. @ArturRJ obrigado , por ajudar , acontece que não vi nenhum led ou lâmpada , mas ela acende mesmo , e também já consegui colocar ela para funcionar novamente , mas nem descobri o motivo de ela ter parado , apenas limpei os contatos da memória , e recoloquei a mesma fonte , que é a corsair 450w , e coloquei outra bateria do setup , e está funcionando bem , porém queria saber sobre essa luz vermelha que acende na placa , e se tem alguma coisa relativa com isso por ele ter parado de funcionar . https://www.youtube.com/watch?v=yCpTtmnGHDU
  16. @Gustavo Henrique Barros parece me Que não existem essa função "Ultrasonic.convert" , e então você pode experimentar usar outros comandos , como esses : #include <Ultrasonic.h> Ultrasonic SensorUltrassonico1(5, 4); #include <LiquidCrystal.h> //Adiciona a biblioteca do display #define trigPin 10 // Declara constante trigPin #define echoPin 9 // Declara constante echoPin #define trigger 18 #define echo 19 Ultrasonic ultrasonic(trigPin, echoPin); //Define os pinos para o ultrassonico LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Define os pinos para o display long Microsegundos = 0; float DistanciaemCM = 0; #define MotorLadoEsquerdo1 11 #define MotorLadoEsquerdo2 12 #define MotorLadoDireito1 9 #define MotorLadoDireito2 10 #define VelocidadeMotorLadoEsquerdo 13 #define VelocidadeMotorLadoDireito 8 //============================================================ Escolhe a velocidade dos motores ==================================================================// int ValorVelocidadeMotorLadoEsquerdo = 120; int ValorVelocidadeMotorLadoDireito = 80; float time=0,distance=0; void setup() { //============================================================== Definições de entrada e saída ===================================================================// pinMode(MotorLadoEsquerdo1, OUTPUT); pinMode(MotorLadoEsquerdo2, OUTPUT); pinMode(MotorLadoDireito1, OUTPUT); pinMode(MotorLadoDireito2, OUTPUT); Serial.begin(115200); delay(3000); } void loop() { // DistanciaemCM = Ultrasonic.convert(Ultrasonic.timing(), Ultrasonic::CM); // DistanciaemCM = Ultrasonic.convert(/*microsec*/Ultrasonic.timing(), Ultrasonic::CM); time = pulseIn( echoPin , HIGH ); DistanciaemCM = time * 340 / 20000; Serial.print( DistanciaemCM ); Serial.println(" cm"); if (DistanciaemCM <= 40) { analogWrite( VelocidadeMotorLadoEsquerdo, ValorVelocidadeMotorLadoEsquerdo); analogWrite( VelocidadeMotorLadoDireito, ValorVelocidadeMotorLadoDireito); digitalWrite(MotorLadoEsquerdo1, HIGH); digitalWrite(MotorLadoEsquerdo2, LOW); digitalWrite(MotorLadoDireito1, HIGH); digitalWrite(MotorLadoDireito2, LOW); delay(700); digitalWrite(MotorLadoEsquerdo1, LOW); digitalWrite(MotorLadoEsquerdo2, HIGH); digitalWrite(MotorLadoDireito1, HIGH); digitalWrite(MotorLadoDireito2, LOW); delay(400); } else { analogWrite( VelocidadeMotorLadoEsquerdo, ValorVelocidadeMotorLadoEsquerdo); analogWrite( VelocidadeMotorLadoDireito, ValorVelocidadeMotorLadoDireito); digitalWrite(MotorLadoEsquerdo1, LOW); digitalWrite(MotorLadoEsquerdo2, HIGH); digitalWrite(MotorLadoDireito1, LOW); digitalWrite(MotorLadoDireito2, HIGH); } // delay(4e44); }
  17. devair1010

    C# Comando for e array

    @wbm01 no seu código não tem nenhum Array , não mesmo , e quando você diz "pegar o resultado de cada linha" significa cada passo desse loop for ! , e no final mostrar o resultado da soma , e seu código poderia ser assim : using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace array { class Program { static void Main(string[] args) { int [] numbers = { 1, 2, 3, 4, 5 }; int [] numeros = new int[20]; int lengthOfNumbers = numbers.Length; int[,] theArray = new int[5, 10]; System.Console.WriteLine("The size array has {0}.", lengthOfNumbers); System.Console.WriteLine("The array has {0} dimensions.", theArray.Rank); int num = 0; int pos = 0; int res = 0; for (num = 1; num < 100; num = num * 2) { Console.WriteLine("Resultado: {0} ", num); numeros[pos] = num; pos += 1; } /// colocou dentro do Array for(; pos >= 0; pos-- ) { res += numeros[pos]; } /// somou aCumulando na VariaveL System.Console.WriteLine(); System.Console.WriteLine("The Result's FinaL eh {0} .", res ); for(; pos < 2; pos++) System.Console.WriteLine(); } } }
  18. @oromotoceu /* * 3) Faça um programa que leia uma quantidade de cartões determinada pelo * digitador, contendo a idade e o sexo de uma pessoa (1-Masculino, 2-Feminino). * Calcule e imprima a idade média destas pessoas, quantas pessoas do sexo * feminino estão na faixa dos 18 aos 25 anos e número total de pessoas do sexo * masculino. */ #include <stdio.h> #include <string.h> int main() { int quantidade, idade, sexo; int numMulher=0, numHomem=0, idadeTotal=0; int numPessoa=0; int a; ///while( a > 0 ) não precisa desse loop ///{ puts("Quantidade de cartoes determinada pelo digitador: "); scanf("%d", &quantidade); do { puts("Entre com a idade: "); scanf("%d", &idade); do { puts("Entre com o sexo: "); /// putzgrila scanf("%d", &sexo); } while( sexo != 1 && sexo != 2 ); /// 1 masc 2 fem idadeTotal += idade; numPessoa++; if( sexo == 2 && idade >= 18 && idade <= 25 ) { numMulher++; } else if( sexo == 1 ) numHomem++; }while( quantidade > numPessoa ); printf("\nA idade media e' %5.2f.\ \nO total de mulheres de 18 aos 25 anos e' %5d. \ \nO numero de homens e' %5d.\n\n", (float) idadeTotal / numPessoa , numMulher,numHomem); ///} return 0; }
  19. @oromotoceu seu programa não está compilando , falta chaves , e corrigindo isso também não funciona , pois você colocou esse loop while , e que nem precisam , usa a variável "a" para controlar , mas ela não foi inicializada , e assim esse loop já passa direto para o final e termina sem fazer nada mesmo , e então removendo ele , seu código funciona bem e creio Que a parte principal do enunciado seria esse : : 1 - qtd cartoes determinada pelo usuario 2 - sexo homem = 1 3 - sexo mulher = 2 4 - idade da pessoa 5 - media da idade de todas as pessoas 6 - qtd de mulheres na faixa de 18 a 25 anos 7 - qtd de homens /* * 3) Faça um programa que leia uma quantidade de cartões determinada pelo * digitador, contendo a idade e o sexo de uma pessoa (1-Masculino, 2-Feminino). * Calcule e imprima a idade média destas pessoas, quantas pessoas do sexo * feminino estão na faixa dos 18 aos 25 anos e número total de pessoas do sexo * masculino. */ #include <stdio.h> #include <string.h> int main() { int quantidade, idade, sexo; int numMulher=0, numHomem=0, idadeTotal=0; int numPessoa=0; int a; ///while( a > 0 ) não precisa desse loop ///{ puts("Quantidade de cartoes determinada pelo digitador: "); scanf("%d", &quantidade); do { puts("Entre com a idade: "); scanf("%d", &idade); do { puts("Entre com o sexo: "); /// putzgrila scanf("%d", &sexo); } while( sexo != 1 && sexo != 2 ); /// 1 masc 2 fem idadeTotal += idade; numPessoa++; if( sexo == 2 && idade >= 18 && idade <= 25 ) { numMulher++; } else if( sexo == 1 ) numHomem++; }while( quantidade > numPessoa ); printf("\nA idade media e' %5.2f.\ \nO total de mulheres de 18 aos 25 anos e' %5d. \ \nO numero de homens e' %5d.\n\n", (float) idadeTotal / numPessoa , numMulher,numHomem); ///} return 0; }
  20. @Eduardo V se , dentro da função , você colocar uma variável para receber o retorno Algoritmo "funcao ler outra" funcao lerTotalc : real Var combustiveln : real trechototal : real Inicio escreva("distancia ") leia( trechototal ) combustiveln <- trechototal * 3.6 retorne combustiveln fimfuncao funcao lerCombp : real // combustivel presente no avião Var combustivelp, combustiveln : real totalcombustivel : real ret : real Inicio combustiveln <- lerTotalc escreval("valor retornado da Função") escreval("que é o total de combustivel consumido",combustiveln) escreval("Quantos litros de combustivel já tem no avião?") leia(combustivelp) se combustivelp = 0 entao totalcombustivel = combustiveln senao totalcombustivel <- combustiveln - combustivelp fimse retorne totalcombustivel fimfuncao var ret : real Inicio ret := lerCombp escreval("Total de combustivel ",ret) Fimalgoritmo
  21. @lsnkesp o resultado está certo , e então pode ser que na diferença apareça resultado negativo , e usar a função "fabs" nesses casos #include <stdio.h> #include <float.h> int main() { double diaria_normal = 0; int qtd_apartam = 75; printf("Diaria: " ); scanf("%lf", & diaria_normal); double diaria_proporcional = diaria_normal - 0.25 * diaria_normal ; double tot_80_porcento = (qtd_apartam * 0.8) * diaria_proporcional , tot_50_porcento = (qtd_apartam * 0.5) * diaria_normal ; printf(" \nDiaria Proporcional -----------------------------: %9.2f" , diaria_normal - 0.25 * diaria_normal ); printf("\ntotal com 80%% de ocupaCAo e diAria proporcional -: %9.2f" , tot_80_porcento ); printf("\ntotal com 50%% de ocupaCAo e diAria normal -------: %9.2f" , tot_50_porcento ); printf(" \nDiferenCa ---------------------------------------: %9.2f" , fabs( tot_80_porcento - tot_50_porcento ) ); printf("\n\n\n"); return 0; }
  22. @Mateus Bruner definir o idioma é com setlocale , e para português é "portuguese" , criar um vetor e incializa lo com todos os valores zero , e um loop que repita doze vezes , e dentro , use scanf para pegar os dados que o usuário digitar no teclado , e insira o valor no vetor na posição escolhida pelo usuário , e você pode ver mais alguma coisa sobre esse exercício , nesse link : https://www.clubedohardware.com.br/forums/topic/1605747-travado-em-programa-com-matriz/#comment-8430882
  23. @oAnfibio você colocou uma função recursiva , e ela serve para Quê !

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!