Ir ao conteúdo
  • Cadastre-se

codigo rapido

Membro Pleno
  • Posts

    275
  • Cadastrado em

  • Última visita

Tudo que codigo rapido postou

  1. ok. também não quero que pense que fiz um julgamento. a gente vai aprendendo com o tempo. continue firme.
  2. qual scanf? todos? vejo que você está enviando um valor por parametro e que talvez queira muda-lo, pra voltar a usa-lo cdepois de terminada a sua função. pra isso dar certo, você deve usar na passagem do parametro o ponteiro. De outra forma, o que está enviando, é uma copia. #include <stdio.h> #include <string.h> #include <stdlib.h> void faz1(int a) { a=4321; } void faz2(int *a) { *a = 1234; } int main() { int a=777; faz1(a); printf("não mudou: %i\n", a); faz2(&a); printf("mudou: %i\n", a); return 0; }
  3. Só pra provocar a mente dos estudiosos da matemática... vejam isso... o conceito de linha não é o mesmo que o de reta. Mas toda equação na forma polinomial descreve uma linha. A unica equação que descreve uma reta é a equação de primeiro grau. Ou seja, uma reta é um caso de linha, mas uma linha nem sempre é uma reta. Portanto, quando se fala em regressão não linear está se falando na verdade de regressão não retilinea? Hehehe... pra vcs pensarem no conceito de linha e de reta na matemática... As variações do y em funções que dependem de condicionais (fora da forma polinomial), formam bicos (ou pontas nas linhas, demonstram que não são polinomiais) é quem deveriam se chamar de "equações" não lineares. Assim como essas equações não são derivaveis pelo mesmo motivo nesses pontos formarem bicos (ou buracos ou pontas)... Somente valores que obedecem funções polinomiais podem ter uma forma de regressão a sua função original. Me digam... devemos ou não mudar o nome de regressão linear para regressão retilinea e regressão não linear para regressão não retilinea? Bem... normalmente quando vejo um conjunto de gráficos como os da bolsa de valores, por exemplo, que não seguem um padrão, costumo dizer que é uma função não linear (significa aleatório).
  4. É sim. Eu uso isso a toda hora para meus oamps. Com isso, você não precisa soldar seu oamp na placa. você solda esse adaptador e troca o oamp quando achar melhor.
  5. Sem a curva caracteristica do seu NTC não tem como fazer isso. Uma solução... descobrir a curva caracteristica do seu NTC você vai precisar saber a faixa de operação que você quer trabalhar. Por exemplo... Se quiser que funciona de 10 graus à 50 graus, a ideia é arrumar um termometro e medir a resistencia para alguns pontos entre 10% a menos do seu minimo e 10% a mais do seu máximo. Então vai encontrar um secador de cabelo ou uma geladeira e medir a resistencia quando seu termometro marcar : 5°, 15°, 30°, 45° e 55° Ai, junto com as resistencias, precisará fazer o ajuste de curvas. Quando eu tenho esse tipo de problema, eu uso o metodo dos quadrados minimos. Esse é um exemplo de como encontar a curva caracteristica de uma função exponencial. A formula é igual para qualuqer caso: https://www.youtube.com/watch?v=CgBpe6h0pDw Ai, com essas medições de resistencia, encontrar a formular que representente a curva caracteristica do seu NTC. Sempre que trocar o seu NTC e você não tiver a curva caracteristica, vai precisar refazer esses calculos usando o mesmo método. O seu caso é mais de eletrônica do que de programação. Acho que seu topico deveria ser movido para Eletrônica. Lá, certeza, que se você mostrar uma foto do seu NTC ou der as especificações os usuários lá saberão te informar melhor que os daqui que é de programação.
  6. Gratidão eterna é muito. Passa a bola pra frente ajudando outros quando puder. #include <stdio.h> #include <stdlib.h> int sensor() { int temp_atual; // aqui pega a temperatura. // no caso, faça de conta que o scanf é o sensor, // pois você vai precisar jogar esse valor a todo momento; printf("Pega temperatura do sensor: \n"); scanf("%d", &temp_atual); return temp_atual; } int main(void) { int temp_liga =90; int temp_desliga =70; int vent =0; // ele começa ligado? Acho que não... int temp_atual ; // sensor deve testar isso //vent=0 desligado //vent=1 ligado while(1) { // sensor entra aqui. // isso é rápido para o sensor, mas somos // obrigados a criar uma forma pra fazer de // conta que tem um sensor... só que vai ser você temp_atual = sensor(); if(temp_atual>=temp_liga) { vent=1; } // perceba que nesse meio ele não deve mudar o estatus de vent // --------o----------o----- // =======70----------90==== // desliga |Nada Munda| liga else if(temp_atual<=temp_desliga) { vent=0; } if(vent) { printf("Eletroventilador ativado\n"); } else { printf("Eletroventilador desativado\n"); } // essa condicional aqui não existe. // é so pra você sair do programa. beleza? if(temp_atual==-1) { // se você digitar -1, vai sair do programa. printf("Desliguei o carro... sai do programa\n"); break; } } }
  7. ve se esse topico te ajuda: https://www.clubedohardware.com.br/forums/topic/1558865-alocação-dinamica-de-array-inclusão-exclusão-e-free/ Observe que tamanho dobra quando atinge o limite. O melhor seria crescer de um tanto x qualquer que você determinar. Olha, deixa eu te dar uma dica... Se você tá pensando em fazer um programa grande, pensa que não vai ser legal fazer exclusão fisica depois, porque vai lhe ser muito, muito trabalhoso de fazer isso sem que o seu programa de algum problema. Se isso valer a pena ok... Mas se não, pense em usar um banco de dados (SQL).
  8. Olá... Olha, no tempo que fiz faculdade eu vi Portugol. Não conhecia esse visualg. E não cheguei a ver threads em portugol. Pra mim é novidade. Mas olha o que eu entendi ai acima... // aqui as libs que o compilador acusar falta int main() { int inst1; int inst2; int inst3; // sem isso aqui, o programa vai // iniciar escolhendo sempre a mesma sequencia. // comente e descomente para ver o que acontece. // gerador de aleatoriedade ou simplesmente semente: srand ( time(NULL) ); int i=1; // i recebe 1// mesmo que i<-1 while(i<20) { randon[0]=1; randon[1]=2; randon[2]=3; inst1=rand()%2; inst2=rand()%2; inst3=rand()%2; printf("%i\n", randon[inst1] ); printf("%i\n", randon[inst2] ); printf("%i\n", randon[inst3] ); i++; } return 0; } Se instN é inteiro, então não pode ser thread... na verdade isso deve significar outra coisa, mas thread, como em C, não é. Agora, se está procurando um exemplo simples de thread, isso pode te dar uma ideia: #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <pthread.h> #include <string.h> typedef struct { int *isRunning; int numero; } Data; // The function to be executed by all threads void *myTh(void *vargp) { // Store the value argument passed to this thread Data *myid = (Data *)vargp; for(int j=0; j<3; j++) { char sh = *myid->isRunning; if( sh=='q' ) //printf("\n=Saindo... Foi digitado: %c\n", sh ); { printf("\n=Parando thread... \nFoi digitado: %c", *myid->isRunning ); break; } // Print the argument, static and global variab printf("\n\nThread %i linha %i", myid->numero, j ); printf("\nisRunning : %c", *myid->isRunning ); sleep(rand()%10); } printf("\n" ); } int main() { pthread_t tid; char ch='s'; Data *data; for (int i=0; i<3; i++) { data[i].isRunning = &ch; data[i].numero = i; pthread_create(&tid, NULL, myTh, (void *)&data[i]); } printf("iniciado! Esperando o comando para para-lo:\n"); while(ch!='q') { //sleep(5); printf("\nDigite 'q' quando quiser sair...\n" ); scanf("%c", &ch); //fgets(ch, sizeof(char*), stdin); } // call this when you are not ready to cancel the thread //pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, NULL); // call this when you are ready to cancel the thread pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL); // Waiting for the created thread to terminate //pthread_join(tid, NULL); printf("\nDesligando tudo. \nTerminando threads e devolvendo comando.\n"); pthread_exit(NULL); return 0; }
  9. Sr. Devair, olhei o código do senhor. A impressão é que o senhor deduziu que ele serviria pra algo assim. Foi por experiencia ou apenas usou um exemplo? Se deduziu que era pra algo assim, como o que foi que lhe deu essa dica?
  10. Aqui a duvida que o senhor levantou sobre o custo beneficio dos paineis solares que achei justo lhes mostrar. Detalhe... eu fiz uma pergunta. Não afirmei, como o senhor insinuou. Quando eu postei minha duvida deixei faltando a fonte cobrada. Não estou certo se foi na National Geographic aqui que vi a materia que li a tempos atras: https://www.nationalgeographic.com/science/article/141111-solar-panel-manufacturing-sustainability-ranking https://www.forbes.com/sites/michaelshellenberger/2021/06/21/why-everything-they-said-about-solar---including-that-its-clean-and-cheap---was-wrong/?sh=4fc9a9855fe5 https://www.lowtechmagazine.com/2008/03/the-ugly-side-o.html Mas o fato é que li que em alguns lugares onde esses paineis estavam sendo feitos, segundo a reportagem que li em algum lugar, tem a energia subsidiada que escondia os reais custos da produção. Além disso, questionava a poluição gerada e os custos pra se limpar novamente o ambiente com tais poluições compensavam a produção. Nesses ai tb, falam do que encontrei, então serve pra pelo menos pro carinha ai parar de amolar. O custo da extração do silicio e outros componentes, que também são (eram na epoca que li) caros. O custo beneficio da produção desses paineis devem levar em consideração a forma ecologica de toda a cadeia industrial e pensar na reciclagem se for necessário reciclar. Ou seja... a produção e a reciclagem também tem que ser verde. Muralha verde da África: https://www.youtube.com/watch?v=Scswo_TkmHE
  11. A expressão quer dizer que deveria durar o máximo póssivel. Mas acho que seja possivel sim fazer algo tão duravel quanto o navio Argus. Ou será que eu li disso apenas aqui? @codigo rápido, cadê a fonte?! Não entendi isso não. você mesmo fala que tem gente que fala que pode não ser vantagem e me exige fonte? Não sei cara... provavelmente é a mesma fonte que o senhor leu a sua...
  12. Eu acho a galera aqui gente boa de mais... Eu não sou benevolente assim porque quando celular explode sem razão aparente ou predio cai por erro de calculo é porque os pivetes das faculdades ficam pagando outros pra fazerem exercicios ou trabalhos pra eles. Eu espero que seu professor tenha pelo menos a competencia pra ver se você copiou isso da internete.
  13. ve se isso te dá uma ideia: int array[6][3] = { {0, 1, 2}, {0, 2, 1}, {1, 0, 2}, {1, 2, 0}, {2, 0, 1}, {2, 1, 0} }; for (int i=0; i<6; i++) { for (int j=0; j<3; j++) h = array[i][j]; }
  14. Eu fiquei longe da computação (trabalho) por uns 6 anos. Só programaei pra mim mesmo algumas poucas coisas em várias linguagens como Java e javaScript. Eu estou brigando com uma depressão profunda. Por isso me mantive mais focado em trabalhos mais manuais. Eu sempre gostei de estudar processos industriais e eletronica. No momento estou relembrando o C. Mas eu já trabalhei com umas 9 linguagens.
  15. Qualquer um pode achar isso, mas não é bem assim. Eu também curto a arte da ferraria, cutelaria e serralheria. O nome, na verdade, só deu uma mudada porque as coisas evoluiram muito na ferraria e cutelaria. Hoje se chama metalurgia. Mas os metodos ainda são os mesmos.
  16. Descupa. Parece que não é difícil resolver isso, mas realmente faz tempo que não pego c#. Nem windows eu tenho mais. a anos... então visual studio ou o compilador em linha de comando... nem pensar pra mim...
  17. Calma ai, Felipe... Não faz não. Deixa ela fazer. Não é que tá errado. O que fizeram é te mostrar os metodos necessários para você fazer isso. porque você não fez? Nem tentou. você quer a coisa pronta? Alguma coisa dava pra sair, mesmo que não fosse o melhor dos códigos. porque não começa pequeno? algo como transformar um portugol em C? vamos la... vamos começar pequeno: faça um programa que recebe um inteiro e uma palavra e imprima os dois na tela. Olha: #include <stdio.h> int main() { int inteiro; printf("Digite um valor inteiro: \n"); scanf("%i", &inteiro); printf("Digitou: %i\n", inteiro); char *palavra; printf("Digite uma palavra: \n"); scanf("%s", palavra); printf("Digitou: %s\n", palavra); return 0; } 1) Agora eu quero que você pesquise na internete o que é um array e como fazer um array em C. Agora, faça um programa que imprima 4 numeros quais quer de um array na tela. #include <stdio.h> int main() { // apague os \n encontrados e veja o que acontece: int array[4] = {2, 4, 5, 7}; printf("%i\n", array[0]); printf("%i\n", array[1]); printf("%i\n", array[2]); printf("%i\n", array[3]); return 0; } Faça os outros. Pelo menos tente. Mostre o seu portugol: 2) Agora eu quero que você pesquise como fazer condicionais em C. if, else, else if. Eu quero que você faça um programa que teste se dois numeros que são iguais e mostre se são ou não na tela. E depois quero que teste dois numeros que não são iguais e mostra que não são na tela. 2.1 Agora eu quero que você me explique o que seja os operadores lógicos que podem ser utilizados nas condicionais. Tais como 'ou' mesmo que '||' e o 'e' lógico &&. Por enquanto esses tá bom, depois, mais na frente lhe pergunto sobre outros. Esses dois são os principais. 3) Agora eu quero que você pesquise o que é laço de repetição, ou loop, em C como por exemplo for, while e do-while. Agora eu quero que você popule o array da questão 1 usando os 3 laços de repetição. Se você responder essas questões nos (eu), ajudo você no resto. Apenas nos prove que tem interesse em aprender.
  18. Ue, moça! Só um topico do mesmo autor sobre o mesmo problema em menos de 4 dias não tá bom não? https://www.clubedohardware.com.br/forums/topic/1563789-código-dando-erro-na-parte-do-for/ Continua ai... se não os que estão te ajudando vão se perder.
  19. Muito elegante a solução do AlfNeto: int exemplo3() { int arrayFonte[9] = {0,1,2,3,4,5,6,7,8}; int tm = sizeof(array)/sizeof(array[0]); for (int i=0; i<tm; i++) { int outra = i + rand() % (tm - i); int temp = arrayFonte[i]; arrayFonte[i] = arrayFonte[outra]; arrayFonte[outra] = temp; printf("Escolhido %i \n", arrayFonte[i]); } } int main() { exemplo3(); return 0; }
  20. ve se isso lhe dá uma ideia: #include <stdio.h> #include <string.h> #include <stdlib.h> #include <time.h> #include <sys/time.h> #include <sys/stat.h> int exemploRemover() { printf("Remover valor 5 \n"); int array[9] = {0,1,2,3,4,5,6,7,8}; int tm = sizeof(array)/sizeof(array[0]); int escolhido = 5; for(int i=0;i<tm;i++) { if(array[i] == escolhido) { for(int j=i; j<tm-1; j++) { array[j] = array[j+1]; } array[tm-1]=-1; tm--; break; } } printf("Os que sobraram foram:\n"); int i=0; while(array[i]!=-1) { printf("%i\n", array[i]); i++; } return 1; } int exemplo2() { int array[9] = {0,1,2,3,4,5,6,7,8}; int tm = sizeof(array)/sizeof(array[0]); // sem isso aqui, o programa vai // iniciar escolhendo sempre a mesma sequencia. // comente e descomente para ver o que acontece. // gerador de aleatoriedade ou simplesmente semente: srand ( time(NULL) ); while(tm>1) { int escolhido = rand()%(tm); printf("Remover valor %i \n", array[escolhido]); for(int i=0; i<tm; i++) { if(array[i] == array[escolhido]) { for(int j=i; j<tm-1; j++) { array[j] = array[j+1]; } array[tm-1]=-1; tm--; break; } } } return 1; } int main() { exemplo2(); return 0; } Existem formas melhores de trabalhar com arrays. Para criar funções como inserção edição e deleção, o melhor seria criar uma struct que contivesse até o tamanho do seu array. Isso é só um exemplo simples de como poderia resolver seu problema.
  21. apresente o enunciado pra ver se é isso. veja se isso lhe ajuda: #include<stdio.h> int main() { int maior, menor, num1, num2; do { printf("Somente serão aceitos dois numeros maiores que 0:\n"); printf("Numero 1: "); scanf("%i",&num1); printf("Numero 2: "); scanf("%i",&num2); if(num1>=0 && num2>=0) { if(num1>num2) { maior=num1; menor=num2; } else { maior=num2; menor=num1; } } }while(num1<0 || num2<0); if(maior==menor) printf("Os numeros são iguais: %i", maior); else if(maior!=menor) printf("maior: %i \nmenor:%i\n",maior,menor); return 0; }
  22. Mas você acabou de declarar maior, menor e num... pra que dizer que eles são iguais ai se não atribuiu valor nenhum pra eles ainda? Eu não sei o que quer fazer, como é o enunciado? porque dependendo do enunciado talvez isso não ajude. tenta fazer isso no inicio: maior=0; menor=0; o senhor fez: while(num>=0); Mas o que você quer não é um num>=0? Então no while deveria estar assim: while(num<0); Para que enquanto o usuário digitar numero menor que zero, retornar ao scanf
  23. Não é... Mas quando se usa um jargão como: poderia ser sobre o que? Sobre C, C#, C++, Java, Delphi... Até sobre Assembly, que na verdade não tem nada de C. Mas que tem a ver com desenvolvimento. Então, mesmo em C, o jargão faz sentido sim. Programar é mais fácil do que isso. Estou só te ensinando como falar com os usuários iniciantes. O senhor saber o que significa jargão? Sugiro olhar o dicionário, pois estou tentando lhe ajudar. Quando se usa jargão, normalmente entre profissionais experientes não é necessário explicações. Mas para os leigos, normalmente devem seguir palavras ou frases como: isso significa que... quero dizer com isso que... E explicar o que quer dizer com o jargão dado... E fazer um jargão e simplesmente jogar um código apos o jargão, não ajuda. É só isso que quero demonstrar ao senhor. Agora veja como foi diferente do que eu fiz: Em que isso está fora de contexto sendo que eu apenas cobri um gancho que estava faltando? E isso é utilizado até em C. Pode ser para Web, mas as motivações de se separar dados e lógica de negócios é algo para todas as linguagens. Nem tanto, mestre. Apesar de ter só uns 30 anos de experiencia com desenvolvimento, estou sempre aprendendo. E agradeço muito a ajuda que venho recebendo de todos. Inclusive do senhor, que vem me mostrando até assembly, quando nem teria obrigação nenhuma de mostrar em tópicos de C. Mas eu li... e não li de olhos de fora. Eu entendo e entendi. Só que, novamente, estou só de mostrando porque deve-se evitar os jargões sem explicações. De nada! Agora aqui é sempre uma mão lavando a outra, não é?
  24. Nossa! Muito legal! Eu também curto muito projetos de sustentabilidade. Eu tenho lido tudo o que posso. Inclusive guardo no meu blog tudo o que encontro pra isso. Mas esse lance de motoperpetuo... Ahhhh... meus tempos de infancia. Quando eu fui estudar ciclo de carnot meus sonhos foram por água abaixo... O papai noel não existe... que decepção... e medo, porque a entropia está correndo atras da gente em todas as dimensões. Pra onde correr? Nem o demônio de Maxwell está livre de ser pego pela entropia. Mas outra coisa tem me preocupado... outro dia li que o custo energético de produção das celulas fotovoltaicas podem não compensar a produção... Isso então não é verdade? Eu penso em energia heolica e hidroeletrica. Tem uns geradores bem legais sendo vendidos para quem gosta de pescaria e camping que permite carregar celular ou ligar pequenas coisas. Um dos projetos que mais gostei foi o biodigestor, pra produção de gas. Eu já pensei em algo que acho que é possivel. Acho que temos recursos pra fazer algo parecido... Se pudessemos circular cabos eletricos nas regiões polares, poderiamos aproveitar a energia da variacao do campo magnetico da Terra provocado pela auroraboreal (vento solar)? O tokamak atualmente tem sido uma das experiencias que parece ser mais promissora. Mas será que vamos conseguir conter todo esse calor dentro de um espaço tão pequeno? Eu imagino que isso seria legal se fosse feito no espaço, e não na Terra. A uma distancia maior do que o espaço de um tokamak. Mas o que acho que seria mais legal era se pudessemos transformar diretamente todo o calor em eletrecidade. A eficiencia dessas maquinas termicas não é boa porque depende de intermediários. No caso por exemplo, a caldeira gera vapor, que empurra as pás da turbina. Mas vejam... o tanto de vapor que escapa para a atmosfera que poderia ser aproveitado... Outra produção que nos é cara é o cimento. Ele precisa de 3 vezes a sua massa em carvão para ser fabricado. Me dá até dor no peito de pensar... Mas esses dias eu vi uma noticia até interessante de que os cientistas americanos estão conseguindo reduzir o custo da produção do cimento usando urina, sangue, suor e lágrimas humanas. Os Dinamarqueses pararam de construir suas cidades tão grandes e estão fazendo casas mais baixas para evitar gastos com cimento e mesmo engarrafamentos. E suas cidades são até bonitas. Será que a produção do cimento realmente nos é necessária? Acho que no espaço será vital, mas na Terra, penso que os nordicos estão certos. Pra mim todas essas ideias são excelentes. Mas acho que para dar certo, precisamos mudar algo em que os senhores industriais viciaram: Obsolescencia planejada. As coisas que produzimos, principalmente no que se refere a produção de maquinas geradoras de energia, deveriam ser duraveis. Eternas. A verdade é que pra mim é que deveriamos ensinar as crianças desde cedo a importancia da conservação de energia e recursos. Exemplo mais legal do quanto temos que aproveitar nossos recursos foi mostrado num desenho animado a muito tempo em 3:20 se vê a realidade: https://youtu.be/c7bazVMkXas?list=PL1H90M-aIJeURM_8-9a3LcWemKQiqcGuq&t=204 Todo o recurso que pudemos poupar é um recurso que evitaria o gasto de energia para repo-lo. Yacouba Sawadogo, o homem que parou o deserto: https://www.youtube.com/watch?v=0fa1yCp7g6o China está domando seus desertos: https://www.youtube.com/watch?v=V2mZLOvoCkA
  25. Só to te ajudando dando exemplo de como o usuário, leigo, possa te entender melhor. É assim que se ensina nas salas de aulas. Exigir que usuário novato separe modelo (dados e logica de negocio) de view e controller, não faz sentido agora. Isso é algo que vai acontecer naturalmente. Mas exigir no começo, pode parecer excelente, mas simplesmente jogar os jargões da profissão assim, de cara, no inicio, sem nenhuma explicação do que quer dizer, não ajuda ninguem que está começando. Lembre-se: Esse é um forum em que iniciantes acessam a todo momento. Inclusive eu acho que ficar procurando defeitos nas formas como os outros usuários ajudam os outros é sempre bem vindo, mas desde que seja feito com atenciosidade, empatia e respeito e sempre com muito cuidado pra não dar a entender o que não gostaria nas entrelinhas.

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!