Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle

Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equilátero - Desafio de Programação Resolvido em C

Quantidade de visualizações: 2260 vezes
Pergunta/Tarefa:

Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra:

A < (B + C), B < (A + C) e C < (A + B).

Escreva um programa C que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais).

Sua saída deverá ser parecida com:

Informe o primeiro lado do triângulo: 30
Informe o segundo lado do triângulo: 40
Informe o terceiro lado do triângulo: 60
O triângulo é escaleno
Resposta/Solução:

Veja a resolução comentada deste exercício usando C:

----------------------------------------------------------------------
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[]){
  setlocale(LC_ALL,""); // para acentos do português
  
  int lado_a, lado_b, lado_c;
    
  // vamos ler o primeiro lado do triângulo
  printf("Informe o primeiro lado do triângulo: ");
  scanf("%d", &lado_a);
    
  // vamos ler o segundo lado do triângulo
  printf("Informe o segundo lado do triângulo: ");
  scanf("%d", &lado_b);
    
  // vamos ler o terceiro lado do triângulo
  printf("Informe o terceiro lado do triângulo: ");
  scanf("%d", &lado_c);
    
  // os lados informados formam um triângulo?
  if((lado_a < (lado_b + lado_c)) && (lado_b < (lado_a + lado_c)) 
    && (lado_c < (lado_a + lado_b))){
    // é um triângulo equilátero (todos os lados iguais)?
    if((lado_a == lado_b) && (lado_b == lado_c)){
      printf("\nO triângulo é equilátero\n");  
    }
    else{
      // é isósceles (dois lados iguais e um diferente)?
      if((lado_a == lado_b) || (lado_a == lado_c) || (lado_c == lado_b)){
        printf("\nO triângulo é isósceles\n");  
      }
      else{
        // é escaleno
        printf("\nO triângulo é escaleno\n");
      }
    }
  }
  else{
    printf("\nOs lados informados não formam um triângulo.\n");
  }
  
  printf("\n\n");
  system("pause");
  return 0;
}


Link para compartilhar na Internet ou com seus amigos:

C ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço while em C - Linguagem C para iniciantes em programação

Quantidade de visualizações: 33315 vezes
O laço while é usado quando queremos que um bloco de instruções seja executado ENQUANTO uma condição for verdadeira (true). Veja um trecho de código exemplificando isso:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
 
int valor = 1;

while(valor <= 10){
  printf("%d  ", valor);
  valor++;
}

Este trecho de código exibe os números de 1 à 10 na página. Veja agora o mesmo trecho de código, desta vez contando de 10 à 1:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

int valor = 10;

while(valor >= 1){
  printf("%d  ", valor);
  valor--;
}

Lembre-se de que a condição testada em um laço while deve resultar em um valor boolean (true ou false). O trecho de código seguinte deixa isso mais claro:

----------------------------------------------------------------------
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 continuar = 1; // 1 é true em C
  int valor = 1;

  while(continuar){
    printf("%d  ", valor);
    valor++;

    if(valor > 10)
      continuar = 0; // 0 é false em C
  }

  printf("\n\n");
  system("PAUSE");
  return 0;
}

Para finalizar, lembre-se de que um laço while pode nunca ser executado, ou seja, se a condição testada na primeira iteração já resultar false, o fluxo de código é transferido para a primeira instrução após o laço.


C ::: C para Engenharia ::: Física - Mecânica

Como usar a Equação de Torricelli para calcular a velocidade da queda livre dada a altura (e a aceleração da gravidade) usando a linguagem C

Quantidade de visualizações: 2128 vezes
A Equação de Torricelli pode ser usada quando temos a altura na qual um corpo (objeto) foi abandonado e gostaríamos de calcular sua velocidade de queda livre em m/s ou km/h imediatamente antes de tal corpo tocar o chão.

Para isso usaremos a seguinte fórmula:

\[ v^2 = \text{2} \cdot \text{g} \cdot \text{H} \]

Onde:

g ? aceleração da gravidade (m/s2)

H ? altura em metros na qual o corpo é abandonado.

Vamos ver um exemplo? Veja o seguinte enunciado:

1) Uma bola de basquete é abandonada a uma altura de 5 metros em relação ao chão. Se essa bola estiver movendo-se em queda livre, qual será a velocidade da bola, em km/h, imediatamente antes de tocar o chão?

Note que o exercício pede a velocidade em km/h, e não m/s. Assim, veja o código C completo para o cálculo:

----------------------------------------------------------------------
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 <math.h> 
     
int main(int argc, char *argv[]){
  // gravidade terrestre em m/s2
  float gravidade = 9.80665;
  // altura da queda (em metros)
  int altura = 5; // em metros
  // velocidade da queda em metros por segundo
  float velocidade_m_s = sqrt(2 * gravidade * altura);
  // velocidade da queda em km/h
  float velocidade_km_h = velocidade_m_s * 3.6;
  
  // mostramos o resultado
  printf("A velocidade da queda livre em m/s é: %fm/s",
    velocidade_m_s);
  printf("\nA velocidade da queda livre em km/h é: %fkm/h",
    velocidade_km_h);
	  
  printf("\n\n");
  system("PAUSE");
  return 0;
}

Ao executar este código C nós teremos o seguinte resultado:

A velocidade da queda livre em m/s é: 9.902853m/s
A velocidade da queda livre em km/h é: 35.650272km/h

Note que definimos, no código, a aceleração da gravidade terreste como 9.80665m/s2.


C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercício Resolvido de C - Usando um laço for para percorrer os elementos de um vetor e exibir a soma de seus valores

Quantidade de visualizações: 14201 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};
Escreva um programa C que usa um laço for para percorrer todos os elementos deste vetor e exibir a soma de seus valores. Seu programa deverá exibir uma saída com a mensagem:

A soma dos valores do vetor é: 32
Resposta/Solução:

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;
}



Vamos testar seus conhecimentos em JavaScript

Analise o seguinte código JavaScript

const verdadeiro = true == [];
const falso = true == ![];
document.write(verdadeiro + falso);

Qual o resultado de sua execução?

A) "true"

B) 1

C) false

D) 0

E) "false"
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

Introdução à Ética

Aristóteles viveu entre grandes personalidades, já que foi discípulo de Platão e mestre de Alexandre, O Grande. Suas reflexões giravam em torno da política, da ética e da metafísica, e foram tão importantes que na atualidade influenciam campos científicos diversos, da política à biologia, passando, é claro, pela filosofia.

Considerando essas informações, analise as afirmativas a seguir.

I - Aristóteles foi o primeiro filósofo a elaborar tratados sistemáticos de ética, como a Ética a Nicômaco.

II - Aristóteles investiga o que é a felicidade, e ela deve ser um bem perfeito que se busca por si mesmo, e não como meio para outra coisa.

III - Ele partilhava da ideia de que uma pessoa virtuosa precisa viver numa sociedade regida por Deus, porque a ética não pode desvincular-se da religião.

Está correto apenas o que se afirma em:

A) I e II, apenas.

B) III, apenas.

C) I, apenas.

D) II, apenas.

E) II e III, apenas.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais

Materiais empregados para instalação de água fria e esgoto

Os materiais utilizados em tubulação de água fria têm evoluído muito nos últimos anos, acompanhando a evolução tecnológica da Ciência dos Materiais. Os canos de água fria HDPE - polietileno - apresentam vantagens significativas. Assinale a alternativa que contém uma delas:

A) São rígidos e, por isso, suportam grandes cargas, podendo ser usados com pouca espessura de parede.

B) Podem ser pintados na cor desejada, o que reduz o custo na hora da marcação na obra.

C) São mais leves do que as tubulações metálicas e flexíveis, além de terem uma vida útil superior quanto à resistência à oxidação.

D) Elevada ductilidade e capacidade de serem soldados apenas por fricção, o que aumenta a resistência mecânica da junta.

E) São de cor marrom, sendo utilizados para esgoto, a temperaturas de até 20ºC e escoamento de 75m.c.a.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

Analise o seguinte código JavaScript

var a = (new Array(10)).toString();

Qual o valor da variável a após a execução desta linha de código?

A) a string "10".

B) um array de 10 strings vazias.

C) a string ",,,,,,,,,".

D) A instrução provoca um erro de execução.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil

Serviços preliminares e instalações provisórias

A instalação de tapumes é obrigatória em atividades de construção, para impedir o acesso de pessoas estranhas ao serviço. Sobre a instalação de tapumes e serviços decorrentes:

A) Os tapumes devem ter altura mínima de 2,2 m em relação ao nível do terreno.

B) Em edifícios com mais de dois pavimentos, é facultativa a construção de galerias para o tráfego de pedestres sobre o passeio.

C) As bordas da galeria para pedestres devem possuir tapumes com altura mínima de 2,0 m e inclinação de 45°.

D) Não é obrigatória a instalação de tapume em todo o perímetro da obra, apenas na testada do lote.

E) As galerias para o tráfego de pedestres devem ter altura livre mínima de 2,5 m.
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

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware 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 funcionalidadesControle 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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 44 usuários muito felizes estudando em nosso site.