Вы находитесь на странице: 1из 13

1 ) Declare variveis que sejam capazes de armazenar as seguintes informaes.

. Nome, Idade, Sexo, CPF, Salrio, Matricula, nota do primeiro bimestre, nota do segundo bimestre e mdia final.

Veja abaixo dois algoritmos que ajuda a responder esta questo. Primeiro usando o VisualG e Portugol. A parte marcado em vermelho responde a questo: declarao de variveis. algoritmo "Variaveis" var nome, sexo, cpf : caracter idade: inteiro notaB1, notaB2, mediaFinal, salario: real inicio escreval("------------- PREENCHA OS DADOS ---------------") escreva("Qual o nome: ") leia(nome) escreva("Qual o sexo? M-Masculino| F-Feminino: ") leia(sexo) escreva("Qual o CPF?(use: 999.999.999-99): ") leia(cpf) escreva("Qual a Idade? ") leia(idade) escreva("Qual o valor de seu Salrio?: ") leia(salario) escreva("Qual Nota do Bimestre 1?: ") leia(notaB1) escreva("Qual Nota do Bimestre 2?: ") leia(notaB2) mediaFinal<-((notaB1+notaB2)/2) escreva("Sua mdia final : ") escreva(mediaFinal) fimalgoritmo Em Pascal, utilizando o software PascalZim temos a seguinte maneira de fazer e responder o exercicio. Em PascalZim assim. Program notas_e_medias ; www.adaobraga.com.br

var nome, cpf, sexo : char; idade : integer; notaB1, notaB2, mediaFinal, salario : real; Begin writeln('------------- PREENCHA OS DADOS ---------------');

write('Qual o nome: '); readln(nome); write('Qual o sexo? M-Masculino| F-Feminino: '); readln(sexo); write('Qual o CPF? (use: 999.999.999-99): '); readln(cpf); write('Qual a Idade? '); readln(idade); write('Qual o valor de seu Salrio?: '); readln(salario); write('Qual Nota do Bimestre 1?: '); readln(notaB1); write('Qual Nota do Bimestre 2?: '); readln(notaB2); mediaFinal:=((notaB1+notaB2)/2); writeln('Sua mdia final : ',mediaFinal); End.

www.adaobraga.com.br

2) Uma loja da Cidade est oferecendo aos seus clientes as seguintes promoes:

Pagamento a vista 50% de desconto; Pagamento em cheque 40% de desconto; Pagamento com cheque pr datado 30 dias (20%); Pagamento com cheque pr-datado 30 e 60 dias (10%); Pagamento com cheque pr-datado 30 e 60 e 90 dias (5%); Carto de Crdito 30% de desconto; Alm disso cliente cadastrado tem um desconto de 5% adicional

Para esta questo veja abaixo duas maneiras de soluo. Em VisualG e Portugol, est mais longo e mais desestruturado, com frmulas de clculos eficientes, mas, com mais voltas para fazer os clculos. algoritmo "SISTEMA DESCONTO" // Funo : Vender e d desconto no pagamento // Autor : Ado Braga // Data : 04/05/2011 // Seo de Declaraes var cadastrado, pergunta, nomeProduto, confirma : caracter qtdProduto, pgto : inteiro descontaMais5, cartaoCredito, valorUnitario, totalVendas, desconta40, desconta50, descontoCheque40 :real descontaCheque20, parcelaCH30e60, descontoCheque30e60, descontoCheque30e60e90, parcelaCH30e60e90 :real inicio // Seo de Comandos enquanto confirma <> "n" faca limpatela escreval(" ") escreval(" ") escreval(" ") escreval(" |------------------- VENDENDO -------------------------|") escreva(" Qual Produto? ") leia(nomeProduto) escreva(" Quantidade: ") leia(qtdProduto) escreva(" Valor Unitrio: ") leia(valorUnitario) totalVendas<-(qtdProduto*valorUnitario) escreva(" Total a pagar: ",totalVendas) limpatela escreval("") escreval("") escreval(" |------------- CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto:5:2) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval("") escreval(" ") www.adaobraga.com.br

escreval("------------------- FORMA DE PAGAMENTO ------------------------------") escreval(" [1] A VISTA - 50% DESCONTO ") escreval(" [2] A VISTA NO CHEQUE - 40% DESCONTO ") escreval(" [3] PAGAMENTO COM CHEQUE P/ 30 DIAS - 20% DESCONTO ") escreval(" [4] PAGAMENTO COM CHEQUE P/ 30 e 60 DIAS - 10% ") escreval(" [5] ......: PAGAMENTO COM CHEQUE P/ 30, 60 e 90 DIAS - 5 % ") escreval(" [6] ......: CARTO DE CRDITO - 30% ") escreval("QUAL A FORMA DE PAGAMENTO? ")

escreva("ltima opo usada: ",pgto, ":: Qual a forma de Pgto? -> ") leia(pgto) escreval(" ") escreval(" ") escolha pgto caso 1 //vendas a vista escreva("Cliente CADASTRADO? ") leia(cadastrado) se (cadastrado = "s") entao desconta50<-(totalVendas*50)/100 descontaMais5<-(desconta50-((desconta50*5)/100)) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval("Produto: ",nomeProduto) escreval("Quantidade: ",qtdProduto) escreval("Valor Unitrio: ",valorUnitario:5:2) escreval("Total a pagar: ",totalVendas:5:2) escreval("50% de desconto: ",desconta50:5:2) escreval("TOTAL a pagar com +5% de fidelidade: ",descontaMais5:5:2) escreval("") escreval("") senao desconta50<-(totalVendas*50)/100 escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 50% de desconto: ",desconta50:5:2) Escreval(" Cliente cadastrado tem 5% de DESCONTO AUTOMATICAMENTE") escreval("") escreval("") fimse www.adaobraga.com.br

caso 2 // avista com cheque 40% desconto escreva("Cliente CADASTRADO? ") leia(cadastrado) se (cadastrado = "s") entao desconta40<-(totalVendas-(totalVendas*40)/100) descontaMais5<-(desconta40-((desconta40*5)/100)) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 40% de desconto: ",desconta40:5:2) escreval(" TOTAL a pagar com +5% de fidelidade: ",descontaMais5:5:2) escreval("") escreval("") senao desconta40<-(totalVendas-(totalVendas*40)/100) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 40% de desconto: ",desconta40:5:2) Escreval(" Cliente cadastrado tem 5% de DESCONTO AUTOMATICAMENTE") escreval("") escreval("") fimse caso 3 // cheque PRE DATADO 30 dias: 20% escreva("Cliente CADASTRADO? ") leia(cadastrado) se (cadastrado = "s") entao descontaCheque20<-(totalVendas-((totalVendas*20)/100)) descontaMais5<-(descontaCheque20-((descontaCheque20*5)/100)) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") www.adaobraga.com.br

escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 20% de desconto: ",descontaCheque20:5:2) escreval(" TOTAL a pagar com +5% de fidelidade: ",descontaMais5:5:2) escreval("") escreval("") senao descontaCheque20<-(totalVendas-((totalVendas*20)/100)) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 20% de desconto: ",descontaCheque20:5:2) Escreval(" Cliente cadastrado tem 5% de DESCONTO AUTOMATICAMENTE") escreval("") escreval("") fimse caso 4 // cheque PRE DATADO 30 e 60: 10% escreva("Cliente CADASTRADO? ") leia(cadastrado) se (cadastrado = "s") entao descontoCheque30e60<-(totalVendas-((totalVendas*10)/100)) descontaMais5<-(descontoCheque30e60(descontoCheque30e60*5)/100) parcelaCH30e60<-descontaMais5/2 escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 10% de desconto: ",descontoCheque30e60:5:2)

www.adaobraga.com.br

escreval(" ",descontaMais5:5:2) escreval(" escreval("") escreval("") senao

TOTAL a pagar com +5% de fidelidade: Em 2 parcelas de ", parcelaCH30e60:5:2)

descontaCheque20<-(totalVendas-((totalVendas*10)/100)) parcelaCH30e60<-(descontaCheque20/2) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 10% de desconto: ",descontaCheque20:5:2) escreval(" Em 2 parcelas de ", parcelaCH30e60:5:2) escreval(" Cliente cadastrado tem 5% de DESCONTO AUTOMATICAMENTE") escreval("") escreval("") fimse caso 5 // cheque PRE DATADO 30,60 e 90: 5% escreva("Cliente CADASTRADO? ") leia(cadastrado) se (cadastrado = "s") entao descontoCheque30e60e90<-(totalVendas-((totalVendas*5)/100)) descontaMais5<-(descontoCheque30e60e90(descontoCheque30e60e90*5)/100) parcelaCH30e60e90<-(descontoCheque30e60e90/3) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 5% de desconto | 30 e 60 dias | TOTAL: ",descontoCheque30e60e90:5:2) escreval(" +5% de desconto de fidelidade: ",descontaMais5:5:2) escreval(" 3 parcelas FIXAS de: ",parcelaCH30e60e90:5:2) www.adaobraga.com.br

escreval("") escreval("") senao escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 5% de desconto | 30, 60 e 90 dias | TOTAL: ",descontoCheque30e60e90:5:2) escreval(" 3 parcelas FIXAS de: ",parcelaCH30e60e90:5:2) escreval("") escreval(" Cliente cadastrado tem 5% de DESCONTO AUTOMATICAMENTE") escreval("") fimse caso 6 // CARTO DE CREDITO: 30% escreva("Cliente CADASTRADO? ") leia(cadastrado) se (cadastrado = "s") entao cartaoCredito<-(totalVendas-((totalVendas*30)/100)) descontaMais5<-(cartaoCredito-((cartaoCredito*5)/100)) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 30% de desconto: ",cartaoCredito:5:2) escreval(" TOTAL a pagar com +5% de fidelidade: ",descontaMais5:5:2) escreval("") escreval("") senao cartaoCredito<-(totalVendas-((totalVendas*30)/100)) escreva(" Valor Total da compra: ",totalVendas) escreval("") escreval("") escreval(" |------------- NOVA CONFERENCIA -------------") escreval(" Produto: ",nomeProduto) escreval(" Quantidade: ",qtdProduto) escreval(" Valor Unitrio: ",valorUnitario:5:2) www.adaobraga.com.br

escreval(" Total a pagar: ",totalVendas:5:2) escreval(" 30% de desconto: ",cartaoCredito:5:2) escreval(" Cliente cadastrado tem 5% de DESCONTO ") escreval("") escreval("") fimse fimescolha escreva("Outra venda: [S]im ou [N]o ") leia(confirma) fimenquanto fimalgoritmo O mesmo cdigo pode ser feito assim usando o PascalZim. s copiar o cdigo abaixo e colar no PASCALZIM para ver como que funciona e como foi feito. Program descontos ; {Uma loja da Cidade est oferecendo aos seus clientes as seguintes promoes: Pagamento a vista 50% de desconto; Pagamento em cheque 40% de desconto; Pagamento com cheque pr datado 30 dias (20%); Pagamento com cheque pr-datado 30 e 60 dias (10%); Pagamento com cheque pr-datado 30 e 60 e 90 dias (5%); Carto de Crdito 30% de desconto; Alm disso cliente cadastrado tem um desconto de 5% adiciona} var parcelas,descontos,valor:real; i,x,opcao: integer; cadastrado:char; {As variaveis acima foram assim pensadas: 1- Parcelas: com a finalidade de dividir em 30, 60 e 90 dias; 2- descontos: para usar no calculo dos descontos oferecidos. 3- valor: receber o valor as ser descontado; 4- i: para ser usado no lao for ... next ... do; 5- x: para perguntar a quantidade de vezes a ser usado no for... next... do; 6- opaco: variavel usado com o comeando CASE opcao of; 7- cadastrado: saber se o cliente cadastrado e descontar +5%} Begin {pergunta quantas vezes vai repetir o programa} write('Quantas vezes? '); read(x); {comea a repetio de x vezes respondido acima} for i := 1 to x do begin GOTOXY(10,4);write('Qual o Valor '); readln(valor); GOTOXY(10,5);write('Cliente Cadastrado? '); readln(cadastrado); www.adaobraga.com.br

if (cadastrado='s') then valor:=(valor-(valor*5)/100); ; {mostra a tela com as opes a ser escolhidas este GOTOXY um comando que posiciona o texto na tela. Nestes abaixo ser apresentado na COLUNA 10 e nas linhas: 7, 9,10,11...} GOTOXY(10,07);writeln(' --------- FORMAS DE PAGAMENTO ----------'); GOTOXY(10,09);writeln('[1] - A VISTA 50% DESCONTO'); GOTOXY(10,10);writeln('[2] - COM CHEQUE 40% DESCONTO'); GOTOXY(10,11);writeln('[3] - CHEQUE 30 DIAS 20% DESCONTO'); GOTOXY(10,12);writeln('[4] - CHEQUE 30 E 60 10% DESCONTO'); GOTOXY(10,13);writeln('[5] - CHEQUE 30 E 60 E 90 5% DESCONTO'); GOTOXY(10,14);writeln('[6] - CARTO DE CRDITO'); GOTOXY(10,16);write('Qual a forma de Pagamento? '); read(opcao); case opcao of 1: {A VISTA. 50% DESCONTO} begin descontos:=(valor-(valor*0.5)); GOTOXY(10,19);write('Programa Fidelidade: ',valor:5:2); GOTOXY(10,20);write('+ Promoo 50% ',descontos:5:2); readkey; clrscr; end; 2: // COM CHEQUE. 40% DESCONTO. 40# begin descontos:=(valor-(valor*0.4)); GOTOXY(10,20);write('Valor a Pagar ',descontos:5:2); readkey; clrscr; end; 3: // 30 DIAS. 20% DESCONTO. 20% begin descontos:=(valor-(valor*0.2)); GOTOXY(10,20);write('Valor a Pagar ',descontos:5:2); readkey; clrscr; end; 4: // CHEQUE 30 e 60 DIAS. 10% begin descontos:=(valor-(valor*0.10)); parcelas:=(descontos/2); GOTOXY(10,20);write('Valor a Pagar ',descontos:5:2); GOTOXY(10,20);write('2 vezes: 30 e 60 de: ',parcelas:5:2); readkey; clrscr; end; 5: // CHEQUE 30,60 e 90 DIAS. 5% begin www.adaobraga.com.br

descontos:=(valor-(valor*0.05)); parcelas:=(descontos/3); GOTOXY(10,20);write('Valor a Pagar ',descontos:5:2); GOTOXY(10,21);write('3 vezes: 30,60 e 90 de: ',parcelas:5:2); readkey; clrscr; end; 6: // CARTO DE CRDIDO. 30% begin descontos:=(valor-(valor*0.30)); GOTOXY(10,22);write('Valor a Pagar ',descontos:5:2); readkey; clrscr; end; end; end; End. 3) Suponha que o Professor de Educao fsica nos pediu para pesquisar os registros dos alunos e produzir uma lista com o nome e endereo de todos os alunos e o esporte indicado para eles de acordo com as seguintes condies:

Sexo masculino com mais de 1,80 m de altura: BASQUETE; Sexo masculino com entre 1,70 e 1,80 m: VOLEIBOL; Sexo feminino com mais de 1,70 m: BASQUETE; Sexo feminino entre 1,60 e 1,70 m: VOLEY Ambos os sexos com menos de 1,60 m: NATAO

Usando o VISUALG eis como ficou o cdigo usando estrutura de seleo SE. algoritmo "Seleo" var mais, sexo :caracter altura :real inicio repita escreva("Qual o sexo do Aluno: ") leia(sexo) escreva("Qual a altura do aluno: ") leia(altura) se (sexo="m") e (altura>=1.80) entao escreval("BASQUETE") fimse se (sexo="m") entao www.adaobraga.com.br

se (altura>1.70) e (altura<1.80) entao escreval("VOLEIBOL") fimse fimse se (sexo="f") e (altura>=1.70) entao escreval("BASQUETE") fimse se (sexo="f") entao se (altura>1.60) e (altura<1.70) entao escreval("VOLEIBOL") fimse fimse se (sexo="f") ou (sexo="m") e (altura<=1.60) entao escreval("NATAO") fimse escreva("Outra consulta? ") leia(mais) limpatela ate (mais <> "s") fimalgoritmo O mesmo cdigo em PascalZIM Program selecao; uses crt; var mais, sexo :char; altura :real; begin repeat; clrscr; write('Qual o sexo do Aluno: ') ; read(sexo) ; write('Qual a altura do aluno: '); read(altura); www.adaobraga.com.br

if (sexo='m') and (altura>=1.80) then writeln('BASQUETE'); ; if (sexo='m') and (altura>=1.70) and (altura<=1.79) then writeln('VOLEIBOL'); ; if (sexo='f') and (altura>=1.70) then writeln('BASQUETE'); ; if (sexo='f') and (altura>=1.60) and (altura<=1.69) then writeln('VOLEIBOL'); ; if (sexo='f') or (sexo='m') and (altura<=1.59) then writeln('NATAO'); ; write('Outra consulta? '); readln(mais); until (mais<>'s'); End.

www.adaobraga.com.br

Вам также может понравиться