Ir ao conteúdo

Algoritmo de matriz (VISUALG)


ceduardolino

Posts recomendados

Postado

Galera eu preciso de ajuda pra iniciar esse algoritmo que esta dando muita dor de cabeça (VISUALG).

Se tiver um filho de Deus pra me ajudar eu ficarei muito grato.

Desde já agradeço.

Uma empresa possui ônibus com 48 lugares divididos em lado direito e lado esquerdo. Faça um algoritmo que utilize duas matrizes 12 x 2 para controlar as poltronas ocupadas no lado direito (janela e corredor) e no lado esquerdo (janela e corredor). A poltrona serão referenciadas conforme sua numeração. As poltronas ocupadas serão apresentadas com o número zero.

Inicialmente todas as poltronas estarão livres. O algoritmo terá as seguintes opções:

* Mostrar poltronas

* Vender passagens

* Sair

OBSERVAÇÃO:

A opção 1 é mostrar todas as poltronas. As poltronas já reservadas estarão preenchidas com o número zero(0) e as outras com os seus respectivos números. A opção 2 é a compra da poltrona. Quando o cliente comprar a poltrona o sistema substitui o número da poltrona por zero (0) como visto nas telas.

A SAÍDA DO PROGRAMA TEM Q SER ASSIM

OBSERVAÇÃO: CONSIDERE O TRACINHOS (---) DA OPÇÃO MOSTRA POLTRONA COM ESPAÇOS VAZIOS

TELA 1

1 - MOSTRAR POLTRONAS

2 - VENDER PASSAGEM

3 - SAIR

DIGITE A OPÇÃO: 1

-1-2-----3-4

-5-6-----7-8

-9-10---11-12

13-14---15-16

17-18---19-20

21-22---23-24

25-26---27-28

29-30---31-32

33-34---35-36

37-38---39-40

41-42---43-44

45-46---47-48

TELA 2

1 - MMOSTRAR POLTRONAS

2 - VENDER PASSAGEM

3 - SAIR

DIGITE A OPÇÃO: 2

DIGITE QUAL O NUMERO DA POLTRONA: 45

TELA 3

1 - MOSTRAR POLTRONAS

2 - VENDER PASSAGEM

3 - SAIR

DIGITE A OPÇÃO: 1

-1-2-----3-4

-5-6-----7-8

-9-10---11-12

13-14---15-16

17-18---19-20

21-22---23-24

25-26---27-28

29-30---31-32

33-34---35-36

37-38---39-40

41-42---43-44

-0-46---47-48

OBSERVAÇÃO: CONSIDERE O TRACINHOS (---) DA OPÇÃO MOSTRA POLTRONA COM ESPAÇOS VAZIOS

A POLTRONA 45 VIROU O NÚMERO ZERO POR CAUSA QUE FOI ESCOLHIDA PELO USUÁRIO.

ME AJUDEM POR FAVOR

DESDE JÁ AGRADEÇO!!!!!!!!

Postado

O codigo que eu fiz é esse mas esta dando muitos erros me ajudem por favor!!

algoritmo "matriz"
procedimento msg(a:caracter)
var
inicio
escreva("Aperte ENTER para continuar")
leia(a)
fimprocedimento
var
esq, dir: vetor[1..12,1..2] de inteiro
i,j,num,opcao: inteiro
inicio

se opcao = 1 então
para i de 1 ate 48 faca
escreva ( esq [i,j] : 3)
escreva ( " " : 10)
escreva ( dir [i,j] : 3)
fimpara
escreval(" ")

se opcao = 2 então
escreva("Digite Qual o numero da poltrona: ")
leia (num)
para i de 1 ate 12 faca //varre a linha da matriz
para j de 1 ate 2 faca
se (esq [i,j]= num) ou (dir [i,j] = num) então
esq [i,j] <- 0
senao
dir [i,j] <-0
fimse
fimpara
escreval(" ")

escreval(" ")
escreval(" ")
escreval("1 - Mostrar poltronas")
escreval("2 - Vender passagem")
escreval("3 - Sair")
escreval(" ")
escreva("Digite a sua opção: ")
leia(opcao)

fimalgoritmo

Eu consegui fazer com VETOR mas com matriz esta osso, se alguem tiver uma ideia como fazer com matriz eu aceito.

algoritmo "vendpass"
// Função :
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
polt : vetor [1..48] de real
menu : inteiro
i, j, cont : inteiro
inicio
para i de 1 ate 48 faca
polt[i] <- i
fimpara
menu <- 0
enquanto menu <> 3 faca
escreval ("Escolha: 1 - Mapa de Poltronas")
escreval (" 2 - Venda de Passagens")
escreval (" 3 - Sair")
leia (menu)
limpatela
se menu = 1 então
cont <- 1
para j de 1 ate 12 faca
escreval (polt[cont]:3, " ", polt[cont+1]:3, " ", polt[cont+2]:3, " ", polt[cont+3]:3)
cont <- cont+4
fimpara
senao
se menu = 2 então
escreva ("Qual a poltrona? ")
leia (i)
se polt[i] = 0 então
escreval ("Desculpe. Poltrona ocupada. Verifique as disponiveis abaixo:")
cont <- 1
para j de 1 ate 12 faca
escreval (polt[cont]:3, " ", polt[cont+1]:3, " ", polt[cont+2]:3, " ", polt[cont+3]:3)
cont <- cont+4
fimpara
senao
polt[i] <- 0
escreval ("Poltrona ", i, " vendida")
fimse
senao
escreval ("Escolha uma opcao valida!!! ")
fimse
fimse
fimenquanto
fimalgoritmo

  • 11 meses depois...
  • 1 ano depois...
Postado
algoritmo "PASSAGENS"
// Função : Venda de passagens
// Autor : Rodrigo
// Data : 28/04/2013
// Seção de Declarações
var
polt1, polt2: vetor[1..12,1..2] de inteiro
cont1, cont2, num1, num2, op, poltVendida: inteiro
inicio
//Preenche a primeira fileira;
num1 <- 1
para cont1 de 1 ate 12 faca
para cont2 de 1 ate 2 faca
polt1[cont1,cont2] <- num1
num1 <- num1+1
fimpara
num1 <- num1+2
fimpara

//Completando os lugares da segunda fileira
num2 <- 3
para cont1 de 1 ate 12 faca
para cont2 de 1 ate 2 faca
polt2[cont1,cont2] <- num2
num2 <- num2+1
fimpara
num2 <- num2+2
fimpara

//Depois de preenchidas as matrizes começa o menu
escreval("Escolha uma opção do menu:")
escreval("1 - Mostrar poltronas")
escreval("2 - Vender passagem")
escreval("3 - Limpar") //Adicionei um limpar só para melhorar visualização
escreval("4 - Sair")
leia(op)
enquanto op <> 4 faca
//Listagem de poltronas
se(op = 1)então
para cont1 de 1 ate 12 faca
para cont2 de 1 ate 2 faca
escreva(polt1[cont1,cont2])
fimpara
escreva(" ---- ")
para cont2 de 1 ate 2 faca
escreva(polt2[cont1,cont2])
fimpara
escreval("")
fimpara
fimse
//Venda de poltrona
se(op = 2)então
escreval("Digite o número da poltrona:")
leia(poltVendida)
para cont1 de 1 ate 12 faca
para cont2 de 1 ate 2 faca
se(polt1[cont1,cont2] = poltVendida)então
polt1[cont1,cont2] <- 0
fimse
se(polt2[cont1,cont2] = poltVendida)então
polt2[cont1,cont2] <- 0
fimse
fimpara
fimpara
fimse
se(op = 3)então
limpatela
fimse

//Refazendo as perguntas
escreval("Escolha uma opção do menu:")
escreval("1 - Mostrar poltronas")
escreval("2 - Vender passagem")
escreval("3 - Limpar")
escreval("4 - Sair")
leia(op)
fimenquanto
escreval("Muito obrigado por utilizar nosso sistema!")
fimalgoritmo

Arquivado

Este tópico foi arquivado e está fechado para 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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!