-
Posts
363 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Livros
Cursos
Análises
Fórum
Tudo que Carlos Zanon postou
-
Você quer inverter todo o vetor? Você vai precisar de um valor auxiliar... Tipo: int aux = A[8]; A[8] = A[0]; A[0] = aux; É possível fazer a soma sim, mas na sua inversão acho que não faz sentido... Você já sabe a posição, não precisa processar até chegar lá. E se for inversão completa do vetor, você pode ir invertendo dos extremos até o meio, da no mesmo. Que linguagem está usando? Olhe, fiz em C um algoritmo que faz a inversão completa... Troca as posições: 0 com 7 1 com 6 2 com 5 3 com 4 No caso, é um vetor de tamanho 8, então ele vai de 0 até 7. Se você quiser algo mais simples e compreensível o exemplo do @devair1010 é excelente. #include <stdio.h> #include <stdlib.h> void inverterVetor(int[], int, int); int main() { int vetor[8] = {1, 2, 3, 4, 5, 6, 7, 8}; int i; printf("Antes da inversao...\n"); for(i = 0; i < 8; i++) printf("%d: %d\n", i, vetor[i]); printf("\n"); inverterVetor(vetor, 0, 7); for(i = 0; i < 8; i++) printf("%d: %d\n", i, vetor[i]); printf("\n"); printf("\n\nFinalizada a inversao...\n\n"); return 0; } void inverterVetor(int* vetor, int inicio, int fim) { int aux; if(inicio >= fim) return; aux = *(vetor+inicio); *(vetor+inicio) = *(vetor+fim); *(vetor+fim) = aux; inverterVetor(vetor, inicio + 1, fim - 1); }
-
Se eu te falar que rodei teu código aqui e o erro é extremamente besta... A Variável 'pos' sua, não estava inicializada para quando você fazia a mudança de valores sem que o laço encontra-se um valor para ela... dai crash... Mudei o for, porque se você já tem a posição inicial, não precisa testa-la novamente... e também aquele if no fim com limite-1, o -1 não precisa, só se você usar <= Muda aqui: Para: Aqui: Para: E Aqui: Para: Eu fiz um algoritmozinho pro selectionSort também, só vi que era o selection quando dei mais atenção :x Se você quiser visualizar o que eu fiz, segue aqui no tópico: Eu fiz em C esse, costume de de fazer assim :v #include <stdio.h> #include <stdlib.h> void selectionSort(int[], int, int); int main() { int vetor[8] = {100,3,25, 103,104, 200,1,64}; int i; selectionSort(vetor, 0, 8); for(i = 0; i < 8; i++) { printf("%d\n", vetor[i]); } printf("\n\nFinalizada a ordenacao...\n\n"); return 0; } void selectionSort(int vetor[], int inicio, int fim) { int valorMin, valorIndex; int aux, i; // Se já atingiu o limite máximo de execução // Então para a recursão. if(inicio >= fim) return; // O Indice inicial é o parametro // inicial de comparação para fazer a troca valorMin = vetor[inicio]; valorIndex = inicio; // Varre a partir do próximo item, pois não é // necessário testar o mesmo item considerando que ele é // menor até o momento. for(i = inicio + 1; i < fim; i++) { // valor para a posição atual com i int valor = vetor[i]; if(valor < valorMin) { valorMin = valor; valorIndex = i; } } if(valorIndex != inicio) { aux = vetor[inicio]; vetor[inicio] = valorMin; vetor[valorIndex] = aux; } selectionSort(vetor, inicio + 1, fim); }
-
Tenta por um "break;" dentro do laço ali dentro do if... Não é que ele volta, é que como o laço continua sua execução ao encontrar um número maior que ele, ele não faz a troca, só faz a troca quando encontra o ultimo número maior que ele, podendo fazer com que ele não seja ordenado corretamente... podendo manter o número menor no começo :v if(menor>vetor[i]) { menor=vetor[i]; pos=i; break; }
-
Fonte 12v 500mA com ponte retificadora
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Eu aceito sim :v Se possível, poste aqui no tópico mesmo para todos terem o acesso ^~^ -
Quando você passa o vetor, sem informar que ele é um ponteiro (diretamente) ele vai tratar este vetor como uma variável de escopo local e não como endereço de memória que você passou anteriormente. Você precisa trata-lo como ponteiro dentro da sua função de ordenação. Ele ordena apenas dentro da função e quando sua execução termina, continua da mesma forma. Estude sobre ponteiros, se não, vai continuar cometendo os mesmos erros... Muda: Para: Mude: Para: Faça as adaptações necessárias, nas comparações e nas definições dos valores... Depois diga se deu certo :v
-
Sugiro você estudar um pouco mais sobre ponteiros de memória para melhor compreensão da função ai... Ele trabalhando diretamente com endereços de memória, aparentemente está concatenando uma string na outra. Ele aponta o endereço de "principal" para "destino" e logo na sequência, aponta "aux" para "principal". Ambas as 3 possuem o mesmo endereço de memória. Se uma mudar, a outra muda também. Logo após, ele começa copiando caractere a caractere no valor do endereço de "principal" de acordo com a posição. "destino" foi criada com 200 posições de memória e "principal" foi apontada para ela, logo "principal" possui acesso as 200 posições de memória. Quando você faz: "principal++", você está indicando que está avançando uma posição de memória a qual "principal" está apontando, e quando ele iguala, ele copia este valor *string dentro do laço (que ele também avançou em string).
-
Fonte 12v 500mA com ponte retificadora
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Acho que não fui muito claro. Existem duas situações. 1. Fonte 12v 500mA que é o assunto do tópico a qual não irei usar um transformador. 2. Fonte 12v 10A que não tem nada a ver com este tópico e que esta vou usar com um transformador quando eu for fazer. Não é porque eu vou fazer uma sem transformador que vou fazer a outra. Os riscos eu sei, entendo e compreendo. Estou fazendo isso com total entendimento que pode dar problema. Mas o caso aqui é que eu vou fazer a fonte. Queimando ou não os componentes. Só me surgiu uma dúvida quanto a um capacitor lá no final (usar 2 capacitores), porém acredito que eu já tenha entendido o porque ele não é necessário (e devo usar apenas 1) e com seu complemento usar um resistor. Eu agradeço a ajuda sobre o resistor mas não me foi muito útil quanto ao 2º capacitor, pois em questão deste, acabei por entender sozinho o motivo de não fazer o uso. O Tópico já pode ser fechado. -
Fonte 12v 500mA com ponte retificadora
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Em casa só tem 110v ^~^ Eu vou fazer com transformador mais pra frente, pois, tenho um circuito que consome cerca de 6A dai a necessidade de usar o transformador. Este devo fazer apenas para brincar e talvez queimar umas peças kkk -
Fonte 12v 500mA com ponte retificadora
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Hm... acho que entendi o que você quis dizer :v Pra brincar só, aprender como funciona as coisinhas. -
Fonte 12v 500mA com ponte retificadora
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Eu devo colocar um fusível logo após o capacitor de 500mA, também me chamaram a atenção sobre o resistor onde o mesmo iria limitar de mais a corrente... Devo usar um LM 7812 para regular a tensão também, mas acho que nas pesquisas aqui já entendi como é que vai funcionar no final das contas... E sobre a ponte, eu já entendi kkk é que me bateu uma confusão mental na hora que estava pensando... obrigado :v -
Gente, seguinte, um tempo atrás eu queria fazer uma fonte sem transformador com até 10A, mas me alertaram que não seria interessante fazer este tipo de fonte acima de 600mA. Agora o seguinte, eu quero fazer uma fonte 127/60Hz ~ 12v-500mA e fiz as seguintes contas: Z = 127 / .5 Z = 254 ohms R = 12 / .5 R = 24 ohms Xc = sqrt(Z² - R²) Xc = sqrt(254² - 24²) Xc = sqrt(63940) Xc = ~252.86 C = 1 / ( 2 * 3.14 * 60 * 252.86 ) C = 1 / 95277.648 C = 0.00001049564 C = 10uF Então o capacitor deve ser de 10uF até 250v * Esse monte de LED é pra simular uma carga, só exemplo que me chamaram a atenção por ter apenas 1 resistor como carga num outro tópico. Ai vem minha dúvida... Como a corrente alterada vai entrar em duas vias... hora de um lado... hora do outro, não seria necessário usar um capacitor de cada lado ou somente 1 na chave já resolve? Porque só 1 já resolve? @edit Acho que somente 1 já resolve porque o mesmo deve funcionar como resistor de alta potência tanto na entrada como "saída"...
-
Eliminador de pilhas ideal para lâmpadas de 3volts
Carlos Zanon respondeu ao tópico de Robinson aqui em Eletrônica
Depende de como você vai ligar suas lâmpadas. Se for em série ou em paralelo. Se for em paralelo vai precisar de resistores. Se for em série, tenha certeza que são de exatos 3v ou superior, se não irão queimar. Sobre a corrente... essa fonte de 12vdc~500mA deve suprir corretamente. Suas lâmpadas devem ser de LED e normalmente é até 30mA, então 4*30mA = 120mA e ainda sobra... -
Você pode procurar um módulo Esp8266 e acredito que usando um PIC18F4520 da pra fazer o serviço bem... (manjo quase nada dos PICs mas ele aparece com frequência em muita coisa...) Dai tem dar uma boa pesquisada no google de como montar direitinho e como programar para microcontroladores :v Também programar o seu app para conversar com o PIC :v
-
Diferença entre resistores 30r 1/4w, 30r 1/2w, 30r 1w
Carlos Zanon respondeu ao tópico de Zafar em Eletrônica
É relacionado a quanto de potência dissipada eles podem aguentar... veja por exemplo... Tensão = U = R . i, onde R = resistência e i = corrente. Watts = Potência e P = U . i, Onde u = tensão e i = corrente. Você precisa saber a potência que o resistor vai dissipar nele, para dimensionar corretamente qual resistor vai usar, se não ele vai esquentar de mais a ponto de queimar... Vamos supor que você vai ligar um LED de 3v em 12v e a corrente que o LED puxa é de 30mA. Ele precisa barrar 9v, no caso ele vai dissipar 9v, então: (12 - 3) = R * 0.03 R = 9 / 0.03 R = 300 ohms P = (12-3) * 0.03 P = 0.27 watts 1/4w = 0.25w, logo 0.25w é menor que 0.27w, então o resistor de 1/4w não deve vai aguentar ou sua vida útil será muito reduzida... é melhor você por um de 1/2w ou de 1w... Agora supor que este mesmo LED puxe 20mA e não 30mA: (12 - 3) = R * 0.02 R = 9 / 0.02 R = 450 ohms P = (12-3) * 0.02 P = 0.18 watts 1/4w = 0.25w, logo 0.25w é maior que 0.18w, então o resistor de 1/4w deve aguentar tranquilo... mas por segurança, eu usaria um de 1/2w só pra ele não trabalhar próximo aos limites e reduzir sua vida útil. -
Me salvou <3 Aqui na minha cidade, eles conhecem como ampolas. Esta resolvido o problema :v
-
Eu 10cm é a distância que ele vai ficar quando aberto, não preciso dele funcionando nessa distância 10cm... preciso que ele: 2mm feche a chave (e circule a corrente na base do transistor apagando o led) e acima disso ele abra (e não circule corrente na base do transistor acendendo o led) Mas entendi o que você quis dizer... @w@ Com um imãzinho não é possível? Não é problema fazer a chave dessa forma que você montou mas acho que ficaria legal só com o imã...
-
Gente, nesse meu circuito: Estou usando: 1 LED Vermelho 1 Resistor 470 ohms 1/4 Watt com 5% 1 Resistor 560 ohms 1/4 Watt com 5% 1 Resistor 27k ohms 1/4 Watt com 5% 1 Transistor BC558 1 Bateria 9v A minha ideia é de que quando a chave abrir, liga o LED e quando fechar apaga o led. Ali na chave, eu posso usar um ímã como chave? visto que ele vai ficar cerca de 2mm de distância quando "fechado" e até 10cm de distância quando "aberto" O ímã é para atrair a corrente e fechar a chave...
-
Eu não devo usar ela, só preciso entender como ela funciona. Pra poder entender como funciona o Regulador de tensão negativa :c Obrigado pelo que postou :v acho que deu pra ter uma noção...
-
Certo... você saberia me dizer em que um circuito simétrico é aplicavel? (Exceto amplificadores) O Motivo de ter um circuito simétrico... Dele ter o negativo ali... É que ainda não consigo assimilar o motivo disso existir e se eu for fazer, no que iria aplicar. No seu exemplo, se entrar 12VCC ele vai dar nas pontas +6VCC / -6VCC, correto? Eu poderia usar componentes de 6VCC sem problema algum, sem necessidade de colocar resistores, é isso? Então neste caso, ele funcionou como um redutor de tensão..? Esses -6VCC ele não retorna ao circuito? No caso não seria interessante o uso de um diodo?
-
Hm... corrente alternada pode ser considerada simétrica? porque ela inverte a polaridade nos intervalos em função da frequência... O Circuito simétrico, é usado pra amplificar/reduzir a corrente, é isso?
-
Não sei se entendi. Vamos supor que eu tenha este circuito e que o resistor seja a carga, só pra entender melhor. Esse circuito é assimétrico, é isso? Porque a onda de tensão é continua, então no caso ele seria de onda, procede?
-
Os reguladores de tensão negativos funcionam como? Quando usar eles? Os positivos pelo que eu entendi devo usar quando tenho, por exemplo, um LM7809 e uma fonte com +12 / 0 Os negativos eu usaria se eu tivesse... uma fonte com +12 / -12 ? <- Neste caso devo usar um LM7912 ou um LM7909 para fazer par com o 7809?
-
Regulador de tensão atua como resistor?
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Acho que entendi... Se eu garantir 9V direto no regulador ele vai dar como saída.. 9-2.5 = ~6.5V... Dai não me vale a pena usar o resistor. Preciso dos 9V. Pra eu garantir os 9V, devo alimentar com ele com pelo menos 9+2.5 = ~11.5V, nisso eu tenho 3V dissipados, caso minha fonte seja estável e forneça exatamente o valor dos 12V... ele vai usar 2.5V pra alimentação e jogar fora os 0.5V Dai como a redução de tensão ocorre no regulador... dai seria: P = U . i, no caso: P = (12-9) . i P = 3.i E fico em função da corrente pra saber o valor de potência dissipada, certo? Não irei usar o resistor e já entendi o motivo ^~^ Se, a grosso modo, ele já atua como um resistor de corrente variável eu não preciso ficar mexendo nisso. Só deixar ele fazer o serviço. Obrigado gente :v -
Regulador de tensão atua como resistor?
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Por causa do consumo de 2.5v do CI, certo? Só adiantaria se fosse uma entrada de 15vcc, certo? :v -
Regulador de tensão atua como resistor?
Carlos Zanon respondeu ao tópico de Carlos Zanon em Eletrônica
Uhum, isso eu tenho noção, só fiz o calculo junto a condição do @faller Preciso saber a corrente apropriada para dimensionar este resistor... tanto o valor dele quanto a potência, visto que estes são diretamente proporcionais e em função da corrente. R = U / i P = U . i Se eu for usar 0.1A, então: R = ( 12-3 ) / 0.1 = 90 ohms P = (12-3) * 0.1 = 0.9 watts Seria um resistor de 100ohms com 3watts de potencia
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