Ir ao conteúdo
  • Cadastre-se

Exercício Navio usando vetores


Posts recomendados

Olá galera, tudo bem ? sou novo aqui e gostaria muito de uma ajuda com um exercício que meu professor me passou, estou tentando fazer mas quanto mais tento mais confuso estou ficando! agradeceria qualquer ajuda/dica com o exercício :)

ps : Usando Vetores.

ps²: Em C.

 

Segue enunciado : 

 

Um navio está dividido em 4 setores para o armazenamento de containers. Cada setor tem um espaço inicial para armazenar 4 containers, mas como é possível fazer o empilhamento deles, esse valor pode chegar ao no máximo 16 containers por setor. Dessa forma esse navio pode armazenar no máximo 64 containers.

Para fazer o carregamento do navio e necessário observar a distribuição dos pesos dos containers de forma equilibrada para que o navio não afunde. A tolerância para que o navio não afunde é que o peso máximo de um setor não pode ser maior do que 15 toneladas em relação aos pesos individuais dos outros setores. Por exemplo: se o setor III pesa no momento 30 toneladas, os demais setores devem ter o peso mínimo de 15 toneladas para que o navio não afunde. O navio afundaria se, por exemplo, o peso do setor I for de 5 toneladas e o peso do setor III for de 30 toneladas.

Exemplo:

Peso Atual do Setor 1: 15

Peso Atual do Setor 2: 5

Peso Atual do Setor 3: 17

Peso Atual do Setor 4: 12

 

Se colocar um container de 6 toneladas no setor 3 o navio afunda, em função do setor 2.

Se colocar um container de 6 toneladas no setor 2 o navio não afunda.

 

Desenvolva uma aplicação em C que faça o carregamento dos containers no navio. O usuário deverá informar o peso do container, sendo o peso mínimo 1 tonelada e no máximo 15 toneladas. A sua aplicação deve respeitar os limites de carga no navio e tendo cuidado para NÃO afundar o navio. Caso o peso digitado seja inválido ou caso o peso digitado para o container afunde o navio, mostre uma mensagem de erro.

Finalize a aplicação quando o navio estiver cheio ou quando o usuário não desejar carregar mais o navio.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Angelo Silvério  Posta seu código pra vermos como você ta tentando

 Eu fiz um mais ou menos só falta acrescentar algumas coisas (veja se te serve)
 

#include <stdio.h>

main()
{
	volta:
	int setor1,setor2,setor3,setor4,maximo;
	maximo = 64;
	printf("Quantos containers deseja armazenar no setor 1: ");
	scanf("%d",&setor1);
	printf("\nQuantos containers deseja armazenar no setor 2: ");
	scanf("%d",&setor2);
	printf("\nQuantos containers deseja armazenar no setor 3: ");
	scanf("%d",&setor3);
	printf("\nQuantos containers deseja armazenar no setor 4: ");
	scanf("%d",&setor4);
	while(maximo,setor1,setor2,setor3,setor4)
	{
			if(maximo)
		{
			printf("Containers no navio:"" %d\n",setor1+setor2+setor3+setor4);
			if(setor1+setor2+setor3+setor4 <= maximo)
			{
				goto ok;
				break;
			}
			else
			{
				printf("Navio não consegue levar tantos containers\n");
				goto volta;
	    }
		}
		ok:
		if(setor1 > setor2)
		{
			printf("Setor 1 com mais carga que o 2\n");
			printf("NAVIO AFUNDOU\n");
			goto volta;
		}
		else 
		{
			printf("Setor 1 carregado com:"" %d containers\n",setor1);
			goto check2;
		}
		check2:
		if(setor2 > setor1)
		{
			printf("Setor 2 com mais carga que o setor 1\n");
			printf("NAVIO AFUNDOU\n");
			goto volta;
		}
		else
		{
			printf("Setor 2 carregado com:"" %d containers\n",setor2);
			goto check3;
		}
		check3:
		if(setor3 > setor4)
		{
				printf("Setor 3 com mais carga que o setor 4\n");
				printf("NAVIO AFUNDOU\n");
				goto volta;
		}
		else
		{
			 printf("Setor 3 carregado com:"" %d containers\n",setor3);
			 goto check4;
		}
		check4:
		if(setor4 > setor3)
		{
		    printf("Setor 4 com mais carga que o setor 3\n");
			printf("NAVIO AFUNDOU\n");
			goto volta;	
		}
		else
		{
			printf("Setor 4 carregado com:"" %d containers\n",setor4);
			break;
		}
	}
}

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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...