Ir ao conteúdo
  • Cadastre-se

Mayk.hsm

Membro Júnior
  • Posts

    16
  • Cadastrado em

  • Última visita

Reputação

6
  1. Bom dia (tarde/noite)!! Estou há um tempo sem comprar notebooks e agora que tenho condições estou em dúvida sobre qual a melhor escolha. Se puderem me ajudar, agradeço. Atualmente tenho um Dell Inspiron 15, 4GB de ram e i3, sem placa de vídeo dedicada e essa configuração de notebook não está sendo muito boa apesar de ser suficiente para programação. Tenho em mente adquirir um notebook com as seguintes configurações: -Processador i7 (7ª ou 8ª geração) (H, HQ, U .. sem preferências) -Ram 16GB -Ter SSD é uma boa, não necessito tanto de espaço em HD -SO é dispensável, podendo não ter, ou ter Linux/ windows tanto faz -2 Slots para ram -Placa de vídeo dedicada -Valor máximo R$ 5.100,00 -Quanto mais fino/leve melhor, apesar de não ser um requisito decisivo. Andei fazendo umas pesquisas mas não me sinto seguro em fazer um escolha ainda, então decidi recorrer ao fórum. Abaixo seguem os modelos que estou considerando até o momento. *Considerei os modelos da Avell também, mas apesar de acreditar que são muito bons, atualmente o preço está muito elevado, na faixa de 5.300 um notebook com 8GB de ram. Minha primeira opção era a Avell, pois já encontrei preço mais em conta (4500 / 4700 R$) mas atualmente sem condições. Inspiron-15-7567 Gaming - (https://www.dell.com/pt-br/shop/notebooks-dell/inspiron-15-gaming/spd/inspiron-15-7567-laptop/i15-7567-e25p) Inspiron 14 7000 Ultrafino - (https://www.dell.com/pt-br/shop/notebooks-dell/inspiron-14-7000-ultrafino/spd/inspiron-14-7472-laptop/i14-7472-d30s)* se eu não me engano esse tem somente 1 slot de memória, o que é ruim. Inspiron 15 7000 Ultrafino - (https://www.dell.com/pt-br/shop/notebooks-dell/inspiron-15-7000-ultrafino/spd/inspiron-15-7572-laptop/cai7572w10he2629brpw)* acredito que só tenha um slot para ram também. Pessoal, se vocês tiverem recomendações de notebooks que usam ou que sabem que é uma boa escolha, por favor me indiquem. Obrigado
  2. Ola Edward, realmente aconselho que dê atenção ao que @vangodp postou para você dar uma olhada, é de utilidade para todos nós, inclusive você. Bom, é legal indicar um tipo para sua função main(). De qualquer forma o erro está na leitura do depositado. Ou você muda a leitura ou muda o tipo. Abs,
  3. Sim, é o problema 1021, eu resolvi ele utilizando outra lógica, uma sem muito cálculo só trabalhando com laços e contadores, mas dessa forma que eu postei aqui eu submeti lá e deu 10% de erro, e vi que era por causa dessa leitura. Mas se puder postar o seu aqui também, agradeço. Nunca é demais observar outras formas de raciocínio.
  4. Esqueci de mencionar, é preciso abrir as casas para poder ver esse erro que comentei. Se ajuda em algo, deixei entre os asteriscos a parte onde começa a dar erro nos cálculos, como estou utilizando como referencia as partes inteiras de cada cálculo, onde era para dar 1.0000000 está dando 0.999999999998 (que já começa na parte onde estão os asteriscos). Mas logo após a leitura já tem um printf para verificar. Obrigado, o código está abaixo. #include<stdio.h> int main(){ double Valor; int N100,N50,N20,N10,N5,N2,M100,M50,M25,M10,M5,M1; double Aux; do{ scanf("%lf",&Valor); }while(Valor<0 || Valor>1000000.00); printf("Valor: %.20f\n",Valor); //Notas N100 = (int)(Valor/100); Aux = N100*100; N50 = (int)((Valor-Aux)/50); Aux+=N50*50; N20 = (int)((Valor-Aux)/20); Aux+=N20*20; N10 = (int)((Valor-Aux)/10); Aux+=N10*10; N5 = (int)((Valor-Aux)/5); Aux+=N5*5; N2 = (int)((Valor-Aux)/2); Aux+=N2*2; M100 = (int)(Valor-Aux); Aux+=M100; //Moedas Valor = (Valor - Aux); M50 = (int)(Valor/0.5); Aux = M50*0.5; M25 = (int)((Valor-Aux)/0.25); Aux+=M25*0.25; M10 = (int)((Valor-Aux)/0.1); Aux+=M10*0.1; //********************************************************************* M5 =(int)((Valor-Aux)/0.05); Aux+=M5*0.05; //********************************************************************* printf("M5: %d\n",M5); // Nessa Verificação era para dar 1, mas está dando 0 por ser 0,999999999999800000 M1 = (int)((Valor-Aux)/0.01); Aux+=M1*0.01; //system("CLS"); printf("NOTAS:\n%d nota(s) de R$ 100.00\n%d nota(s) de R$ 50.00\n%d nota(s) de R$ 20.00\n%d nota(s) de R$ 10.00\n%d nota(s) de R$ 5.00\n%d nota(s) de R$ 2.00\n",N100,N50,N20,N10,N5,N2); printf("MOEDAS:\n%d moeda(s) de R$ 1.00\n%d moeda(s) de R$ 0.50\n%d moeda(s) de R$ 0.25\n%d moeda(s) de R$ 0.10\n%d moeda(s) de R$ 0.05\n%d moeda(s) de R$ 0.01\n",M100,M50,M25,M10,M5,M1); return 0; }
  5. Olá pessoal, como vai? Estou há um bom tempo quebrando a cabeça em um exercício e agora consegui perceber que o problema não está nos cálculos, mas na leitura do teclado. Estou tentando ler um número qualquer como float ou double, (mas para meus testes estou inserindo o número 415.15), mas ele está lendo 415.14999999999998000000, isso da um erro nos meus cálculos pois esse número de entrada é utilizado em várias partes do código e acaba dando diferença no final. Eu estava utilizando Float, só que a margem de erro era maior, então passei a utilizar Double, mas ainda há essa margem de erro. Alguém saberia dizer como faço para neutralizar isso? Obs: Estou utilizando como entrada apenas números com 2 casas decimais, se houver como limitar isso também serve, pois preciso exatamente do número que o usuário digitar. Caso isso seja algo corrente em outras linguagens, quem souber de algum material que eu possa ler também serve. A leitura que estou fazendo para Double é básica: do{ scanf("%lf",&Valor); }while(Valor<0 || Valor>1000000.00); Obrigado, Vlw!
  6. Olá turma, tudo bem? Eu estou procurando material para estudos da biblioteca PDcurses, achei bastante material para Ncurses mas este é para Linux. Algum de vocês já usou PDcurses e pode me indicar onde baixar materiais de estudo? O conteúdo pode ser em inglês mesmo, mas caso saibam de algum em português seria um alívio hahaha. Estou querendo conhecer um pouco dessa pois disseram ser melhor que a conio.h . Com a curses.h acredito ser possível construir janelas de interação em C , e estou querendo usar algo do gênero em um projeto de programação. Obrigado, se alguém souber de algo e puder contribuir agradeço.
  7. @1freakday Obrigado, entendi o que você quis dizer. Mas se entendi bem, talvez esse trecho do código não funcione para achar palavras em meio a letras. Como por exemplo: adfsafovorakovosbananadajr caso eu queira identificar só a palavra ovo, tenho que fazer uma verificação se a próxima letra não é um 's' ... Mas super válido no caso de frases. Identificar se o próximo caracter é um espaço, já facilita. Eu não havia pensado dessa forma, como na frase "Macacos gostam de bananas", essa forma que indicou já resolve. (se entendi seu código errado, por favor fale, aí dou uma olhada melhor) @daniel.oliveira Eu identifiquei que você usou função para fazer a comparação, é que não estudei funções ainda, então estou meio perdido quanto a mexer com os parâmetros. Mas vou tentar dar uma olhada essa semana e voltar nesse seu exemplo, mas pô, valeu, assim já tenho um exemplo para fazer o paralelo e tentar aprender.
  8. @daniel.oliveira Obrigado, tentei entender seu codigo por um bom tempo, mas não consegui compreender ainda. Vou estudar alguns conceitos que eu não sei, e tentar compreender durante a semana. Mas valeu pela colaboração. @Mauro Britivaldo Criei um if , acho que resolve o problema do plural, apesar de eu não saber se é o jeito mais efetivo. Revendo e aprendendo. valeu if(PALAVRA[j]==FRASE[aux_i])//faz contagem da sequencia, para fazer comparação com tamanho { x++; } if((FRASE[T_PALAVRA+i]=='s')&&(PALAVRA[T_PALAVRA-1]!='s'))//esse ultimo if que trata dos plurais x--; ...
  9. @Mauro Britivaldo @vangodp Mauro, valeu. Não pensei nessa possibilidade. Vou tentar arrumar meu codigo para corrigir esse erro que você apontou. Vangodp, obrigado pela sugestão, vou dar uma estudada em "tokens" ou algo referente, e testar esse comando strstr() para ver como posso melhorar essa solução. valeu.
  10. Boa tarde, tudo bem? Estou estudando strings e montei um código para verificar quantas vezes uma palavra aparece em uma frase. Gostaria de saber como vocês fariam um exercício como esse, (obs: não precisa postar o código, pode dizer um assunto para eu estudar ou a forma como vocês pensariam para resolver isso, pois achei meu código muito confuso). O codigo ficou assim, quem puder dar dicas ou ideias de como resolveriam a mesma coisa, ficaria agradecido. Obrigado, valeu. #include <stdio.h> #include <string.h> int main(){ char PALAVRA[40],FRASE[40]; int i,j,quantidade=0,T_FRASE,T_PALAVRA,x=0,aux_i=0; printf("Digite uma frase\n"); scanf(" %39[^\n]",&FRASE); printf("Digite uma palavra\n"); scanf(" %39[^\n]",&PALAVRA); T_PALAVRA= strlen(PALAVRA); T_FRASE = strlen(FRASE); for (i=0;i<T_FRASE;i++)//faz verificação de todas as letras da FRASE { if (PALAVRA[0]==FRASE[i])//compara a primeira letra de PALAVRA com as letras da frase { aux_i=i;//aux com valor de i x=0;//variavel de controle de sequencia for(j=0;j<T_PALAVRA;j++)//faz verificação da sequencia da sequencia PALAVRA com a sequencia da FRASE { if(PALAVRA[j]==FRASE[aux_i])//faz contagem da sequencia, para fazer comparação com tamanho { x++; } aux_i++; } if (x>=T_PALAVRA)//verifica se sequencia da PALAVRA foi encontrada na FRASE quantidade++; } } if (quantidade>=1) printf("A frase contem a palavra %d vezes",quantidade); else printf("A frase NAO contem a palavra"); return 0; }
  11. @CiroboyBR Orra cara. Obrigado. Com o que você escreveu, percebi que não estava usando o comando for corretamente em todos os códigos que fiz. Agora peguei a lógica, valeu.
  12. Olá, dúvida rápida. Estou tentando entender como inverter uma string, então montei um código básico para depois aplicar o conceito na atribuição de uma string em outra. Mas estou com problemas. esse é o código teste. #include <stdio.h> #include <stdlib.h> int main(){ char NOME[5]; int i; printf("Digite uma frase\n"); scanf("%4[^\n]",&NOME); for (i=0;i<4;i++) printf("%c\n",NOME[i]); for (i=3;i==0;i--) printf("%c\n",NOME[i]); return 0; } Por que esse trecho funciona? (esse apresenta na ordem normal) ... for (i=0;i<4;i++) printf("%c\n",NOME[i]); e esse não?(porque o conceito do for não está funcionando aqui? para apenas apresentar ao contrário.) for (i=3;i==0;i--) printf("%c\n",NOME[i]); valeu.
  13. Depende de você cara. Caso você seja uma pessoa que gosta de aprender e sabe aprender, pode tentar começar por C, C++ ou C#, pelo que pesquisei são razoáveis para aprender. Agora, se você é uma pessoa de certo modo "lenta" para aprender as coisas, e tem mais dificuldade ... recomendo começar pelo VisualG, que usa português estruturado para fazer os códidos. O VisualG é uma ferramenta didática, para fortalecer o pensamento lógico, como o amigo Marcos disse acima, é recomendado aprender lógica de programação para começar a programar. Tente se avaliar, vá no youtube e veja uma aula de VisualG e uma aula de outra linguagem. DETALHE: Não quero dizer que todo mundo que usa o VisualG é "lento", o intuito é deixar claro que o VisualG é uma ferramenta bastante simples, e pode ajudar pessoas que têm mais dificuldade à entender a lógica de programação. OBS: o VisualG é uma ferramente didática, você pode aprender com ele, mas não o confunda como sendo uma linguagem de programação.
  14. @rjort_nine @Paulo Moraes da Silva Paulo, o problema não era no main, mesmo na função void main() o programa estava executando. O problema é que o code::blocks (compilador que eu uso), mesmo quando da erro ele não interrompe o fluxo do algoritmo. Quando digito um caracter tipo char em um local reservado para um tipo int deveria acusar erro e parar o fluxo ( o que ocorre em outros compiladores), mas no code::blocks o fluxo continua e muda os valores dos contadores e do acumulador. rjort_nine, não consegui compreender muito bem o que acontece nessa condição do if, se souber me explicar por favor ... scanf ( " %c", &decisão) if (decisão == (int)decisão) printf ( "ERRO\n" ); ... Para testar eu montei esse, e independente do valor digitado (int ou char) a mensagem que aparece é sempre "ERRO", e caso eu mude o == por != a mensagem apresentada é sempre "Okay".Como disse, sou novo nisso. Você usou alguma biblioteca específica? Pois como padrão eu utilizo somente a <stdio.h> e <stdlib.h>. ... scanf ( " %c", &decisão); if (decisão == (int)decisão) printf ( "ERRO\n" ); else printf( "Okay\n" ); ... De qualquer forma, meu problema inicial era só o compilador, testei o mesmo codigo em outro compilador e deu certo. Obrigado pela contribuição de vocês.
  15. @Eduardo Bordin Como o moderador dif mencionou acima, aqui não podemos resolver os trabalhos, afinal, não é esse o propósito de uma aprendizagem. Mas uma dica é: Os contadores são bem simples de entender. Dentro de um laço de repetição um contador nada mais é do que uma variável qualquer que recebe o valor armazenado nela mais uma unidade sempre que o laço é executado. marcador := marcador + 1 //se o marcador for unitário Um acumulador funciona no mesmo esquema que um contador, mas ao invés de ser incrementado uma unidade é incrementado um valor qualquer, que não necessariamente tem um padrão definido. Como por exemplo a soma dos salários de funcionários de um setor. O acumulador acumula a soma de todos cada vez que o laço é executado. acumulador := acumulador + Salario Pense no conceito de acumulador e use a multiplicação para adequar ao seu problema... espero ter ajudado. Bons estudos.

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