Ir ao conteúdo

MatheusINF

Membro Pleno
  • Posts

    126
  • Cadastrado em

  • Última visita

Tudo que MatheusINF postou

  1. Desempilhar é remover apenas o último elemento, o algoritmo fica assim: int desempilha(PILHA &pilha){ if (pilha.nElem == 0) cout<<"\nPILHA VAZIA."; int ch = pilha.a[pilha.nElem -1].chave; pilha.nElem--; cout<<"\nElemento "<<ch<<" removido com sucesso."; } Agora se tu quer remover tudo é muito simples: void esvaziar(PILHA &pilha){ pilha.nElem = 0; cout<<"\nPilha vazia"; }
  2. @allanxd Caramba que site fera mnw, valeu
  3. Fala galera beleza? Bom estava usando o C++ aqui e sem querer coloquei " /// " , e percebi que ficou roxo , porém é como um comentário, o que é isso? , serve pra comentários mais importantes ou tem uma utilização real?
  4. @isrnick Cara realmente com o strtok() , consigo fazer o resto da lista tranquilo , uma pena eu não saber dele antes ahahahaha, muito obrigado cara ^^
  5. @isrnick Cara não sei se isso é assunto pra outro tópico, mas e quando você não a palavra? , por exemplo a pessoa digita uma frase e após isso digita uma palavra pra ver quantas vezes apareceu na frase ou se apareceu , como fazer?
  6. Olá pessoal, Boa tarde Bom eu preciso mostrar quantas a palavra 'de' aparece na frase int main() { char frase[25] ; int i , cont=0; printf("Digite uma frase qualquer em letras minusculas: "); scanf(" %[^\n]",frase); for(i=0; i<strlen(frase); i++) { if ( (frase[i] == 'd') && (frase[i+1] == 'e') ) cont++; } printf("\n\nA palavra 'de' aparece %d vezes na frase.",cont); } adicionado 6 minutos depois Bom galera consegui, porém não sei se ficou muito correto, porém está funcionando int main() { char frase[100] ; int i , cont=0; printf("Digite uma frase qualquer: "); scanf(" %[^\n]",frase); strlwr(frase); for(i=0; i<strlen(frase); i++) { if ( (frase[i] == 'd') && (frase[i+1] == 'e') ) { if(frase[i+2] == ' ' || frase[i+2] == '\0') cont++; } } printf("\n\nA palavra 'de' aparece %d vezes na frase.",cont); }
  7. Fala galera de boa ? Bom eu preciso fazer esse exercício porém estou meio travado: 02 ) Faça um algoritmo pra calcular e escrever a raiz quadrada de um número positivo Y usando o seguinte roteiro: - A primeira aproximação para a raiz quadrada de Y é X = Y/2; - As sucessivas aproximações serão X = X + Y / 2 . X; O algoritmo irá ler a quantidade de aproximações e só poderá ser utilizado 3 variáveis. int main() { float x , i; int y; printf("Digite um numero inteiro positivo: "); scanf("%d",&y); printf("\nDigite quantas aproximacoes deseja fazer: "); scanf("%f",&x); i = x; printf("\n\nA raiz quadrada de %d : ",y); for(i; i>0; i--) { if(i==x) x = y/2.0; i--; x = (x + y ) / ( 2.0*x); } // FIM FOR printf("%d",x); } // FIM MAIN Bom eu cheguei até aqui, porém não tenho ideia de como continuar :/
  8. adicionado 0 minutos depois Como assim esse float? ,pode fazer isso? adicionado 1 minuto depois @devair1010 valeu mnw, esse funcionou
  9. Fala galera, eu preciso fazer o seguinte exercício : 5) Desenvolva um programa que contenha uma sub-rotina que receba um valor inteiro e positivo N e retorne o valor de S, obtido pelo seguinte cálculo: S = 1 + 1/1! + 1/2! + 1/3! + … + 1/N! Bom, eu acho que eu fiz porém o resultado é sempre 0.00000 , alguém sabe me dizer o que está errado? int sub(int n) { int fat = 0; float s = 0; for(fat=1 ; n>1; n= n - 1) { fat = fat * n; s = s + 1/fat; } printf("\n\nO resultado = %f\n\n",s); } int main() { int num; printf("Digite um valor inteiro: "); scanf("%d",&num); sub(num); } adicionado 42 minutos depois Bom , consegui fazer aparecer alguma coisa, porém ele ignora o 1 / 1! , e acima do 1/ 2! ele não inclui a soma também : / float sub(int n) { float s = 0 ; int fat =0; for(fat=1 ; n>1; n--) { fat = fat * n; s = s + 1.0/fat; } printf("\n\nO resultado = %f\n\n",s+1.0); } int main() { int num; printf("Digite um valor inteiro: "); scanf("%d",&num); sub(num); }
  10. @giu_d @isrnick , Muito obrigado galera ^^
  11. Fala galera tudo bom? Bom, eu estava dando uma pesquisada e reparei que o uso do "gets()" não é muito recomendado e eu encontrei isso "%[^\n]s" , pra meio que substituir, porém eu não sei se estou utilizando de maneira incorreta pois meu algoritmo não funciona utilizando isso, alguém sabe porque? int main() { char nomes[5] [10]; int i,op; for(i=0; i<5; i++) { printf("Digite o %d nome: ",i+1); scanf("%[^\n]s", &nomes[i] ); } printf("\n\nDigite um numero entre 1-5: "); scanf("%d",&op); printf("\n\nO valor %d se refere ao seguinte nome: %s",op,nomes[op-1]); } ** Eu estou usando as seguintes bibliotecas: #include <stdio.h> #include <math.h> #include <stdlib.h> #include <string.h>
  12. adicionado 11 minutos depois Realmente está configurado pra ler C++11, vou tentar muda mnw, Vlwws
  13. Eu uso o Code Blocks mnw, será que a versão pode influenciar? lá na faculdade esse código estava executando normal \:
  14. Fala galera beleza? Bom comecei na facul Estrutura de dados e o professor usar C++, como eu utilizava o C estou com algumas dificuldades, como nesse algoritmo #include <iostream> #include <stdlib.h> using namespace std; void Bubble(int v[],int n) { int i,j,guarda,trocou,k=n; while(1){ trocou = 0; cout <<"\nRepete: "<<n-k+1<<": "; for(i=0; i<k-1; i++){ if(v[i] > v[i+1]) { trocou =1; guarda = v[i]; v[i] = v[i+1]; v[i+1] = guarda; } // FIM IF } // FIM FOR for(i=0; i<k; i++) cout<<" "<<v[i]; k--; if(!(trocou)) return ; } // FIM WHILE }// FIM BUBBLE int main() { int i, n; cout<<"Digite quantos valores tem o vetor: "; cin >> n; int v[n]; for(i=0; i<n; i++) { cout<<"Entre com o valor para V["<< i <<"]: "; cin>> v[i]; } // FIM FOR cout<<"Vetor desordenado: "; for(i=0; i<n; i++) cout<<" "<<v[i]; cout<<"\n"; Bubble(v,n); cout <<"\nVetor ordenado: \n"; for(i=0; i<n; i++) cout<<" "<<v[i]; cout<<endl; } // FIM MAIN Quando eu executo ele da um Erro "ISO C++ forbids variable length array 'v' [-Wvla]", eu não sei o motivo, se alguem souber pode me ajudar ?
  15. @isrnick HAHAHAH Realmente uma aula cara , muito obrigado !
  16. Fala galera, estou revendo strings e não sei como diferenciar quando: A string 1 é igual a string 2 e quando a string 1 é maior que a string 2, pois utilizando o "strcmpi" ( ignorando maiúsculas e minusculas), ambos resultam em 1, se alguém souber me explique por favor :/
  17. @AnsiC Cara muito obrigado !
  18. Fala galera beleza? Estou fazendo uma revisão por vídeo aulas de algoritmo e me deparei com o seguinte algoritmo pra calcular o quadrado dos números: void interface() { printf("\nDIGITE 0 PARA SAIR\n"); printf("OU INFORME UM NUMERO INTEIRO PARA CALCULAR O QUADRADO: "); } int leitura() { int num; scanf("%d",&num); return num; } void quadrado(int numero) { printf("O numero ao quadrado: %d\n",numero*numero); } int main() { int valor; for(interface(); valor=leitura(); interface()) { quadrado(valor); } return 0; } Eu gostaria de saber o motivo dele sair quando a pessoa digitar 0 ?
  19. @Mestre88 Certo mais acho que não precisarei não, o curso é de Informática e tem essa matéria só pra dar uma base mesmo :/
  20. @Mestre88 Na foto que mandei eu coloquei pelo lógic switch mnw. no caso eu poderia substituir qual daqueles pelo terra? Esse terra no caso é neutro né? ai ele fica em 0?
  21. @Mestre88 Negativo você fala colocar um logic switch e ligar no 0? adicionado 2 minutos depois @Mestre88 Opaaa consegui cara ficou o fino mesmo, muitooo obrigando não ia sair disso nunca. Foto: https://imgur.com/9gMQfHb
  22. Vou postar imagens do imgur, bom estou simulando é da materia de Circuitos digitais por enquanto fiz assim (Estou fazendo o rélogio todo, porém se conseguir mudar os segundos pra bcd o resto eu consigo provavelmente kkkkkkkkk) Com o display bcd utilizando o 4511 ficou assim (Mudei só um algorismo pra testar): https://imgur.com/QZpQlO6 ** COMO NUNCA USEI ESSE BCD DE 7 SEGMENTOS NÃO SEI MUITO BEM USAR ELE**
  23. Cara consegui, porém como faz pra aparecer o número que eu quero? pois quando coloco fica ligado as 7 partes do display
  24. Bom galera eu preciso fazer um contador de segundos utilizando flip flop, porém eu não posso usar esse display hexadecimal que usei eu preciso usar um BCD de 7 segmentos pra cada algorismo como fazer isso? Segue a foto: https://imgur.com/akkmekk
  25. @devair1010 Vlwww, caso alguém precise no futuro #include <stdio.h> int main() { // VARIAVEIS int n,i,j,temp,cont; // INICIO printf("Digite quantos valores o arranjo ira ter: "); scanf("%d",&n); float x[n+1],y; printf("\n\n"); for(i=0; i<n; i++){ printf("Digite o valor da posicao %d do arranjo: ",i+1); scanf("%f",&x[i]); } for (i=0;i<n; i++) for(j=i+1;j<n;j++) { if (x[i]>x[j]) { temp=x[i]; x[i]=x[j]; x[j]=temp; } } printf("\nVetor em ordem crescente: \n"); for(i=0;i<n;i++) printf(" %.1f - ",x[i]); printf("\n\nDigite um valor aleatorio: "); scanf("%f",&y); cont=0; i=0; while ( i == 0 && cont < n) { if (x[cont]== y) i = 1; cont++; } if (i ==1) printf("\t\nO elemento %.1f pertence ao conjunto.\n",y); else{ x[n]=y; for (i=0;i<n+1; i++) for(j=i+1;j<n+1;j++) { if (x[i]>x[j]) { temp=x[i]; x[i]=x[j]; x[j]=temp; } } printf("\nVetor em ordem crescente: \n"); for(i=0;i<n+1;i++) printf(" %.1f - ",x[i]); } return 0; }

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!