Você está aqui: C ::: Dicas & Truques ::: Arquivos e Diretórios |
Como ler o conteúdo de um arquivo um caractere de cada vez usando a função fgetc() da linguagem CQuantidade de visualizações: 431 vezes |
A função fgetc() da linguagme C pode ser usada quando queremos ler o conteúdo de um arquivo um caractere de cada vez. Esta função retorna o caractere atualmente representado pelo indicador de posição interna no arquivo. Depois de lido o caractere, o indicador de posição avança para apontar para o próximo caractere. Veja a assinatura desta função: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- int fgetc(FILE *file); O trecho de código abaixo mostra como usar um laço while para ler todos os caracteres do arquivo especificado e exibir o conteúdo na tela: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { FILE *arquivo = fopen("c:\\testes.txt", "r"); int caractere; // testa se o arquivo foi aberto com sucesso if(arquivo != NULL){ // vamos usar um laço para ler o conteúdo do arquivo // e exibí-lo while((caractere = fgetc(arquivo)) != EOF) printf("%c", caractere); fclose(arquivo); // libera o ponteiro para o arquivo } else printf("Nao foi possivel abrir o arquivo."); printf("\n\n"); system("PAUSE"); return 0; } |
Link para compartilhar na Internet ou com seus amigos: |
C ::: C para Engenharia ::: Física - Mecânica |
Como calcular Velocidade Vetorial Média usando a linguagem C - C para Engenharia - Física - Mecânica - CinemáticaQuantidade de visualizações: 2690 vezes |
Como calcular Velocidade Vetorial Média usando a linguagem C Na Física, mais especificamente na Mecânica e Cinemática, nós estamos o tempo todo interessados em medir a "rapidez" com que uma partícula se move de um ponto para outro ponto. Por partícula podemos entender qualquer móvel: um carro, um avião, uma bola, uma pessoa, etc. No caso de um movimento bidimensional ou tridimensional nós devemos considerar a grandeza velocidade média como vetores e usar a notação vetorial. Em outras dicas do site você encontrará cálculos envolvendo vetores e até mesmo calculadoras com as operações vetoriais mais comuns. Dessa forma, a fórmula para obtenção da Velocidade Vetorial Média é: \[\vec{v}_\text{méd} = \frac{\Delta \vec{r}}{\Delta t} \] Onde __$\Delta \vec{r}__$ é a variação da posição da partícula e __$\Delta t__$ é a variação do tempo entre os dois deslocamentos cuja velocidade vetorial média querermos medir. Antes de vermos o código C, dê uma boa olhada na imagem a seguir: Nosso objetivo será calcular a velocidade vetorial média da partícula saindo da posição __$\vec{r}_1__$ = 10__$\hat{\imath}__$ + 7__$\hat{\jmath}__$ m (10, 7), no instante t1 = 2s, e indo para a posição __$\vec{r}_2__$ = 12__$\hat{\imath}__$ + 2__$\hat{\jmath}__$ m (12, 2) em t2 = 7s. Note que o trajeto da partícula foi marcado de verde na imagem. E agora, finalmente, vamos ao código C que lê os valores das coordenadas x e y dos dois vetores de posições (inicial e final), o tempo de deslocamento inicial e final e mostra o vetor velocidade média: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]){ // coordenadas dos dois vetores de posições float x1, y1, x2, y2; // guarda o vetor delta r (variação do deslocamento) float delta_r_x, delta_r_y; // guarda o tempo inicial, tempo final e variacao (em segundos) float tempo_inicial, tempo_final, delta_t; // guarda as coordenadas do vetor velocidade float vetor_vm_x, vetor_vm_y; // x e y do primeiro vetor printf("Coordenada x do primeiro vetor: "); scanf("%f", &x1); printf("Coordenada y do primeiro vetor: "); scanf("%f", &y1); // x e y do segundo vetor printf("Coordenada x do segundo vetor: "); scanf("%f", &x2); printf("Coordenada y do segundo vetor: "); scanf("%f", &y2); // vamos ler o tempo inicial e tempo final printf("Tempo inicial em segundos: "); scanf("%f", &tempo_inicial); printf("Tempo final em segundos: "); scanf("%f", &tempo_final); // vamos calcular o vetor delta r delta_r_x = x2 - x1; delta_r_y = y2 - y1; // vamos calcular o delta t (variação do tempo) delta_t = tempo_final - tempo_inicial; // finalmente calculamos o vetor velocidade média vetor_vm_x = delta_r_x / delta_t; vetor_vm_y = delta_r_y / delta_t; // mostramos o resultado printf("O Vetor Velocidade Média é: (%.2f, %.2f)m/s", vetor_vm_x, vetor_vm_y); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Coordenada x do primeiro vetor: 10 Coordenada y do primeiro vetor: 7 Coordenada x do segundo vetor: 12 Coordenada y do segundo vetor: 2 Tempo inicial em segundos: 2 Tempo final em segundos: 7 O Vetor Velocidade Média é: (0.40, -1.00)m/s Pressione qualquer tecla para continuar. . . Note que aqui nós estamos usando vetores do R2, mas o processo é o mesmo para vetores do R3. |
C ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular MDC em CQuantidade de visualizações: 23585 vezes |
Atualmente a definição de Máximo Divisor Comum (MDC) pode ser assim formalizada: Sejam a, b e c números inteiros não nulos, dizemos que c é um divisor comum de a e b se c divide a (escrevemos c|a) e c divide b (c|b). Chamaremos D(a,b) o conjunto de todos os divisores comum de a e b. O trecho de código abaixo mostra como calcular o MDC de dois números informados: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <locale.h> // função que recebe dois inteiros e retorna // o Máximo Divisor Comum dos dois int MDC(int a, int b){ int resto; while(b != 0){ resto = a % b; a = b; b = resto; } return a; } int main(int argc, char *argv[]){ int x, y; setlocale(LC_ALL,""); // para acentos do português printf("Este programa permite calcular o MDC\n"); printf("Informe o primeiro número: "); scanf("%d", &x); printf("Informe o segundo número: "); scanf("%d", &y); printf("O Máximo Divisor Comum de %d e %d é %d", x, y, MDC(x, y)); printf("\n\n"); system("pause"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Este programa permite calcular o MDC Informe o primeiro número: 12 Informe o segundo número: 9 O Máximo Divisor Comum de 12 e 9 é 3 |
C ::: Fundamentos da Linguagem ::: Estruturas de Controle |
C para iniciantes - Como usar a instrução switch em CQuantidade de visualizações: 44650 vezes |
A instrução switch é usada quando queremos testar várias possibilidades de fluxo de código mas não queremos usar vários if...else...if. Desta forma, cada possibilidade é testada em um bloco case. Veja um exemplo:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int valor = 4; switch(valor){ case 0: printf("Valor e igual a 0"); break; case 1: printf("Valor e igual a 1"); break; case 2: printf("Valor é igual a 2"); break; default: printf("Nenhuma das anteriores"); } printf("\n\n"); system("PAUSE"); return 0; } Veja que, se nenhuma das condições testadas em um bloco case for satisfatória, a parte default da instrução switch será executada. |
Vamos testar seus conhecimentos em JavaScript |
Qual é a sintáxe correta para referenciar um arquivo JavaScript externo chamado "auxiliar.js"? A) <script name="auxiliar.js"> B) <script src="auxiliar.js"> C) <script href="auxiliar.js"> Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Processos e técnicas construtivas de instalações elétricas e hidráulicas As instalações prediais de água fria têm a função de distribuir água potável em temperatura ambiente, enquanto as instalações prediais de água quente distribuem água aquecida, sempre observando a segurança dos usuários. Analise as afirmativas a seguir, referentes às instalações prediais de água fria e água quente. I. As colunas de distribuição têm a função de conduzir a água a partir dos barriletes com destino aos ramais, tanto na instalação de água fria quanto na instalação de água quente. II. Os aquecedores de acumulação se caracterizam pela capacidade de armazenamento de água, que é aquecida em um reservatório componente do equipamento. III. O sistema de aquecimento individual, em uma edificação, consiste naquele que alimenta todos os pontos de utilização de um único apartamento. IV. As bitolas das tubulações empregadas em uma rede de distribuição de água devem diminuir a partir do barrilete em direção ao sub-ramal. Assinale a alternativa que apresenta somente a(s) afirmativa(s) correta(s). A) Apenas a afirmativa I está correta. B) Apenas a afirmativa III está correta. C) Apenas as afirmativas II e III estão corretas. D) Apenas as afirmativas I, II e IV estão corretas. E) As afirmativas I, II, III e IV estão corretas. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Responsabilidade civil dos prepostos e preponentes De acordo com as definições de preponente, assinale a alternativa correta. A) O preponente responde com o gerente pelos atos que este pratique em seu próprio nome, mas à conta daquele. B) O preposto pode, a qualquer tempo no exercício do seu oficio, fazer-se substituir por alguém de sua confiança no desempenho da preposição. C) Ao preposto não é vedado negociar por conta própria ou de terceiro, tampouco lhe é vedado participar, desde que indiretamente, de operação do mesmo gênero da que lhe foi cometida. D) O gerente não pode estar em juízo em nome do preponente, mesmo que pelas obrigações resultantes do exercício da sua função. E) A responsabilidade dos preponentes pelos atos de quaisquer prepostos, praticados nos seus estabelecimentos e relativos à atividade da empresa, é limitada aos atos autorizados por escrito. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Tipos de Escoamentos Para um conduto cilíndrico de raio R, calcular a área molhada, o perímetro molhado e o raio hidráulico em duas situações: (1) conduto completamente cheio de água e (2) conduto 50% preenchido. Identificar o escoamento que ocorre em cada uma das situações e qual escoamento é mais influenciado pelas paredes do contorno sólido. A) A1 = πR2; PM1 = 2πR, RH1 = R, escoamento em conduto forçado A2 = (πR2)/2; PM2 = πR, RH2 = R/2, escoamento à superfície livre. O escoamento em 2 é o mais influenciado pelas paredes, pois o RH é menor. B) A1 = πR2; PM1 = 2πR, RH1 = R/2, escoamento em conduto forçado A2 = (πR2)/2; PM2 = πR, RH2 = R/2, escoamento à superfície lívre. Ambos os escoamentos possuem a mesma influência, pois o valor de RH é igual nos dois casos. C) A1 = πR2; PM1 = 2πR, RH1 = R, escoamento em conduto forçado A2 = (πR2)/2; PM2 = πR, RH2 = R/2, escoamento à superfície livre. O escoamento em 1 é o mais influenciado pelas paredes, pois o RH é maior. D) A1 = πR2; PM1 = 2πR, RH1 = R/2, escoamento em conduto forçado A2 = (πR2)/2; PM2 = πR, RH2 = R/2, escoamento à superfície livre. O escoamento em 2 é o mais influenciado pelas paredes, pois a A2 é menor. E) A1 = πR2; PM1 = 2πR, RH1 = R/2, escoamento à superfície livre A2 = (πR2)/2; PM2 = πR, RH2 = R/2, escoamento em conduto forçado. Ambos os escoamentos possuem a mesma influência, pois o valor de RH é igual nos dois casos. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Dimensionamento de pilares intermediários O pilar P6 é classificado como pilar intermediário porque as vigas são contínuas sobre o pilar, não originando flexão importante que deva ser considerada no cálculo do pilar. Considerando que a largura do pilar seja de 14cm, o coeficiente de majoração da carga yn é 1,25. Dados: Nk = 600kN lex = ley = 280cm Qual é a força normal de cálculo? A) 750kN. B) 1.050kN. C) 700kN. D) 690kN. E) 840kN. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |