Mudanças entre as edições de "Programação para Redes de Computadores (técnico) (diário 2013-1)"

De MediaWiki do Campus São José
Ir para: navegação, pesquisa
(08/04)
(15/04)
Linha 84: Linha 84:
  
 
==15/04==
 
==15/04==
 +
Problema do dia: Dado um dia e mês neste ano de 2013, em que semana estamos?
 
<syntaxhighlight lang=c>
 
<syntaxhighlight lang=c>
 
inicio
 
inicio

Edição das 22h20min de 15 de abril de 2013

Aulas

01/04

Problema: saber o valor final de parcelamento (1 +3) a 2% de juros.

inicio

// Problema: pagamento de uma geladeira, comprada a prazo em
// 1 + 3 x com juros de 2% ao mês.
escrever "Por favor, informe o valor da geladeira: "
real valorGeladeira
ler valorGeladeira

// 1) Saber quanto é o valor de entrada.
escrever "Agora, informe o valor da entrada: "
real entrada
ler entrada

// 2) Deduzir o valor de entrada do valor total, e depois dividir por 3. Isso 
//    dará o valor da parcela sem juro. Aplicar, no segundo mês, já o juro de 2%.
real parcela
parcela <- (((valorGeladeira - entrada) / 3) * 1.02)

// 3) No terceiro mês, aplicar o mesmo juro sobre o valor do mês anterior;
//    ou seja, juro composto.
real parcela2
parcela2 <- (parcela * 1.02)

// 4) Repetir o processo no quarto mês.
real parcela3
parcela3 <- (parcela2 * 1.02)

// 5) Somar tudo e ver o prejuízo.
real somatorio
somatorio <- entrada + parcela + parcela2 + parcela3
escrever "Ao final, a geladeira custou ", somatorio, "."

fim

08/04

E se todas as opções forem variáveis?

inicio

escrever "Por favor, informe o valor da geladeira: "
real valorGeladeira
ler valorGeladeira

escrever "Deseja pagar a entrada? S ou N"
texto pagarEntrada
ler pagarEntrada

real entrada
se (pagarEntrada = "N" ou pagarEntrada = "n") entao 
    entrada<-0
senao 
    escrever "Agora, informe o valor da entrada: "
    ler entrada
fimse 

escrever "Valor de juros: "
real valorJuros
ler valorJuros

escrever "Quantidade de parcelas: "
real qtdParcelas
ler qtdParcelas

real somatorio
real parcela
parcela <- (valorGeladeira - entrada) / qtdParcelas

inteiro mes
para mes de 1 ate qtdParcelas passo 1
    parcela <- parcela * (1 + valorJuros * 0.01)
    somatorio <- somatorio + parcela
proximo 

escrever "Ao final, a geladeira custou ", entrada + somatorio, "."
escrever "\nForam ", qtdParcelas, " parcelas de ", somatorio / qtdParcelas, " cada."

fim

15/04

Problema do dia: Dado um dia e mês neste ano de 2013, em que semana estamos?

inicio

inteiro dias
inteiro mês
inteiro semanas
inteiro resto
inteiro quociente

//Pedir ao usuário:
//- dia
//- mês
escrever "Informe o dia: "
ler dias
escrever "Agora, informe o mês (número): "
ler mês

//Dependendo do mês, deve-se somar à quantidade de dias, de acordo com o calendário juliano.
//Ao final, teremos a quantidade de dias no ano.
escolhe mês
    caso 1: // Janeiro
        dias <- dias
    caso 2: // Fevereiro
        dias <- dias + 31
    caso 3: // Março
        dias <- dias + 31 + 28
    caso 4: // Abril
        dias <- dias + 31 + 28 + 31
    caso 5: // Maio
        dias <- dias + 31 + 28 + 31 + 30
    caso 6: // Junho
        dias <- dias + 31 + 28 + 31 + 30 + 31
    caso 7: // Julho
        dias <- dias + 31 + 28 + 31 + 30 + 31 + 30
    caso 8: // Agosto
        dias <- dias + 31 + 28 + 31 + 30 + 31 + 30 + 31
    caso 9: // Setembro
        dias <- dias + 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31
    caso 10: // Outubro
        dias <- dias + 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30
    caso 11: // Novembro
        dias <- dias + 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31
    caso 12: // Dezembro
        dias <- dias + 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30
fimEscolhe        

//Como a primeira semana tem apenas 5 dias (começa na terça), se a soma estiver entre 1 e 5 então
// estamos ainda na primeira semana. Caso contrário, apenas subtraimos esse valor (5) da soma.
se dias >=1 e dias <= 5 então
    semanas <- 1
senão
    dias <- dias - 5
    //Com o valor que sobrou, faz-se uma divisão por 7. Se o resto for 0, o resultado é o próprio
    // quociente mais um (a primeira semana); caso contrário (o resto está entre 1 e 6), então
    // somamos: primeira semana (1) + quociente + 1 semana.
    resto <- dias % 7
    se resto = 0 então
        semanas <- (dias / 7) + 1
    senão
        semanas <- 1 + (dias / 7) + 1
    fimSe
fimSe

escrever "É a semana número ", semanas, "."

fim