Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
|
Usando um laço for para percorrer os elementos de um vetor e exibir a soma de seus valores - Exercícios Resolvidos de CQuantidade de visualizações: 14173 vezes |
|
Exercícios Resolvidos de C - Usando um laço for para percorrer os elementos de um vetor e exibir a soma de seus valores Pergunta/Tarefa: Considere o seguinte vetor de inteiros: // um vetor de inteiros contendo sete elementos int valores[] = {4, 5, 1, 8, 2, 2, 10}; A soma dos valores do vetor é: 32 Veja abaixo a resolução completa para esta tarefa: ---------------------------------------------------------------------- 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[]) { // um vetor de inteiros contendo sete elementos int valores[] = {4, 5, 1, 8, 2, 2, 10}; // o primeiro passo é criar uma variável que vai receber a soma // dos valores dos elementos int soma = 0; int i; // agora vamos usar uma laço for para percorrer todos os elementos // do vetor, obter o valor do elemento atual e adicionar ao valor atual // da variável soma for(i = 0; i < 7; i++){ soma = soma + valores[i]; // poderia também ser escrito assim: // soma += valores[i]; } // vamos exibir a soma dos valores do vetor printf("A soma dos valores do vetor é: %d\n", soma); system("PAUSE"); return 0; } |
|
Link para compartilhar na Internet ou com seus amigos: | |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como escrever uma função is_numeric() em C que verifica se uma string contém apenas dígitos de 0 a 9Quantidade de visualizações: 9929 vezes |
Em algumas situações precisamos verificar se uma string contém apenas dígitos de 0 a 9, ou seja, é um valor numérico inteiro válido. Para isso podemos usar a função personalizada em C que mostro nesta dica. Veja que o segredo é passar todos os caracteres individualmente para a função isdigit(). Veja o código:---------------------------------------------------------------------- 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 <string.h> #include <ctype.h> // função personalizada que permite verificar se uma // string contém apenas dígitos de 0 a 9 int is_numeric(const char *str){ int res = 1; // passou no teste // vamos percorrer todos os caracteres da string // e testar se cada um é um dígito. Se não // for nós marcamos res como 0 e retornamos while(*str){ if(!isdigit(*str)){ res = 0; break; } // vamos passar para o próximo caractere str++; } return res; } int main(int argc, char *argv[]){ char valor[20]; // vamos guardar o valor digitado aqui // vamos ler o valor informado pelo usuário printf("Digite qualquer coisa e tecle ENTER: "); gets(valor); // vamos verificar se o usuário informou uma string // que contém apenas dígitos de 0 a 9 if(is_numeric(valor)) printf("Voce informou uma string numerica"); else printf("Voce NAO informou uma string numerica"); puts("\n\n"); system("PAUSE"); return 0; } E, antes que perguntem como é possível verificar se a string contém um valor fracionário válido, a seguinte alteração pode ser feita: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- int is_numeric(const char *str){ int res = 1; // passou no teste // vamos percorrer todos os caracteres da string // e testar se cada um é um dígito ou uma vírgula. Se não // for nós marcamos res como 0 e retornamos while(*str){ if((!isdigit(*str)) and (*str != ',')){ res = 0; break; } // vamos passar para o próximo caractere str++; } return res; } |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de C - Como testar se um ano é bissexto em C - Um programa que lê um ano com quatro dígitos e informa se ele é bissexto ou nãoQuantidade de visualizações: 796 vezes |
Pergunta/Tarefa: Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando ele com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da Terra e com os eventos sazonais relacionados às estações do ano. O último ano bissexto foi 2012 e o próximo será 2016. Um ano é bissexto se ele for divisível por 4 mas não por 100, ou se for divisível por 400. Escreva um programa C que pede ao usuário um ano com quatro dígitos e informa se ele é bissexto ou não. Sua saída deverá ser parecida com: Informe o ano: 2024 O ano informado é bissexto. Veja a resolução comentada deste exercício usando C console: ---------------------------------------------------------------------- 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> int main(int argc, char *argv[]){ int ano; setlocale(LC_ALL,""); // para acentos do português // vamos solicitar que o usuário informe um ano printf("Informe o ano: "); scanf("%d", &ano); // vamos verificar se o ano informado é bissexto if(((ano % 4 == 0) && (ano % 100 != 0)) || (ano % 400 == 0)){ printf("\nO ano informado é bissexto.\n"); } else{ printf("\nO ano informado não é bissexto.\n"); } printf("\n\n"); system("pause"); return 0; } |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Exercícios Resolvidos de C - Um método recursivo que conta de 10 até 0Quantidade de visualizações: 771 vezes |
Pergunta/Tarefa: Escreva um método recursivo em C que conta e exibe os valores de 10 até 0. Seu método deverá possuir a seguinte assinatura: void contar_recursivamente(int n){ // sua implementação aqui } Sua saída deverá ser parecida com: 10 9 8 7 6 5 4 3 2 1 0 Veja a resolução comentada deste exercício usando C console: ---------------------------------------------------------------------- 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 recursiva que conta de 10 até 0; void contar_recursivamente(int n){ // vamos exibir o número atual printf("%d\n", n); // devemos prosseguir com a recursividade? if(n > 0){ // decrementa o valor de n n--; contar_recursivamente(n); // e faz uma nova chamada recursiva } } int main(int argc, char *argv[]){ setlocale(LC_ALL,""); // para acentos do português // efetua uma chamada ao método recursivo fornecendo // o primeiro valor contar_recursivamente(10); printf("\n\n"); system("pause"); return 0; } |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Peso específico relativo O peso específico relativo para líquidos é relacionado com o peso específico da água em condições padrão de temperatura e pressão. Sabendo que o peso específico relativo de uma substância é de 0,8, determine o seu peso específico. A) 0,8N/m3. B) 8N/m3. C) 8000N/m3. D) 0,8kg/m3. E) 0,8m3/kg. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Locação da obra Durante a fase de "levantamento", colhemos informações in loco para uso na fase de projeto. No momento de passar o que está no projeto para o terreno, frequentemente são encontradas dificuldades na implementação, principalmente devido a erros de levantamento, que muitas vezes fornecem, por exemplo, um formato de terreno que não coincide com a forma real. A etapa referida, que apresenta dificuldades de implementação, é: A) Medição de obra. B) Locação de obras. C) Locação de estacas. D) Levantamento altimétrico. E) Levantamento planimétrico. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
O código de ética profissional: Concorrência Ao longo da história, os mercados foram se estruturando de diversas formas. Nesse contexto, em cada estrutura, a relação oferta e demanda assume comportamentos distintos em função das suas particularidades. Assim, podemos afirmar que, classicamente, o mercado, hoje, está estruturado de uma forma bem definida. Indique a alternativa que contém as possibilidades de estrutura de mercado. A) Oligopólio, concorrência monopolista, empresa concorrencial, concorrência perfeita. B) Monopólio, oligopólio, concorrência monopolista e concorrência interna. C) Monopsônio, concorrência monopolista, oligopólio e concorrência perfeita. D) Monopólio, oligopsônio, concorrência monopolista e concorrência perfeita. E) Monopólio, oligopólio, concorrência monopolista, concorrência perfeita. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
Ações em estruturas: apresentação dos principais carregamentos na análise de estruturas convencionais É exemplo de ação permanente direta: A) Peso próprio da estrutura. B) Vento. C) Terremoto. D) Deslocamentos de apoios. E) Mobiliário. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Domínios de Deformações Vigas de concreto armado, com seções submetidas a um momento fletor e a um esforço cortante, são dimensionadas de tal forma que se determine uma armadura longitudinal para resistir ao momento fletor e uma armadura transversal para resistir ao esforço cortante. Analise as informações a seguir, a respeito da solicitação normal do tipo momento fletor: I) Solicitação de flexão simples ocorre quando a única solicitação atuante é o momento fletor. II) Solicitação de flexão composta ocorre quando, além do momento fletor, há uma força normal atuante. III) Solicitação de flexão oblíqua ocorre quando o plano de flexão compreende um eixo de simetria da seção transversal. Assinale a alternativa correta: A) Somente a afirmação I está correta. B) Somente as afirmações I e II estão corretas. C) Somente a afirmação II está correta. D) Somente a afirmação III está correta. E) Somente as afirmações II e III estão corretas. Verificar Resposta Estudar Cards Todas as Questões |
Mais Desafios de Programação e 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 |