30 de abril de 2009

História de hoje: DOBRO? o.O

29 de abril de 2009

Projeto I

Um rascunho do meu projeto, os Exercícios 4 e 5 versão 0.2:

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>

int main(void)
{
FILE *in;
int gdriver = DETECT, gmode, errorcode;
int i,j;
int sign;
int tons;
int num;
float x,y;
float DadosX[300],DadosY[300];
float maxY = 0;//,maxY = 0;
float YScale = 0;//,XScale = 0;
float faixa[17];
float soma = 0;
float yData = 0,Y = 0;
char tipo[40];
char *b;
clrscr();
if ((in = fopen("C:/tc/BIN/clown.pgm", "rt"))== NULL)
{
fprintf(stderr, "Cannot open input file.\n");
return 1;
}
//Ler cabecalho
fgets(tipo,40,in);
printf("%s",tipo);
fgets(tipo,35,in);
printf("%s",tipo);
//Ler numeros
fscanf(in,"%s",&tipo);
x = atof(tipo);
printf("%3.0f ",x);
fscanf(in,"%s",&tipo);
y = atof(tipo);
printf("%3.0f = %3.0f\n",y,x*y);
fscanf(in,"%s",&tipo);
tons = atoi(tipo);
//maxX = tons;
printf("%d\n",tons);

for(j = 0;j <= 16; j++){
faixa[j] = 0;
}//FOR

do{
fscanf(in,"%s",&tipo);
num = atoi(tipo);
if feof(in) break;
if((num >= 0 ) && (num <= 15)) faixa[0]++;
if((num >= 16 ) && (num <= 30)) faixa[1]++;
if((num >= 31 ) && (num <= 45)) faixa[2]++;
if((num >= 46 ) && (num <= 60)) faixa[3]++;
if((num >= 61 ) && (num <= 75)) faixa[4]++;
if((num >= 76 ) && (num <= 90)) faixa[5]++;
if((num >= 91 ) && (num <= 105)) faixa[6]++;
if((num >= 106 ) && (num <= 120)) faixa[7]++;
if((num >= 121 ) && (num <= 135)) faixa[8]++;
if((num >= 136 ) && (num <= 150)) faixa[9]++;
if((num >= 151 ) && (num <= 165)) faixa[10]++;
if((num >= 166 ) && (num <= 180)) faixa[11]++;
if((num >= 181 ) && (num <= 195)) faixa[12]++;
if((num >= 196 ) && (num <= 210)) faixa[13]++;
if((num >= 211 ) && (num <= 225)) faixa[14]++;
if((num >= 226 ) && (num <= 240)) faixa[15]++;
if((num >= 241 ) && (num <= 255)) faixa[16]++;

}while (!feof(in));

printf("\t");

for(j = 0;j <= 16; j++){
if(faixa[j] > maxY ) maxY = faixa[j];
printf("Faixa: %d = %3.0f \t",j+1,faixa[j]);
if(j % 2 == 0) printf("\n\t");
soma = soma + faixa[j];
}//FOR

printf("\nSoma: %3.0f\n",soma);
printf("Maximo em X: %3.0f\n",maxY);
YScale = (400-40)/maxY;
printf("YScale: %f\n",YScale);
getch();
fclose(in);

// inicializar modo grafico
initgraph(&gdriver, &gmode, "C:\\tc\\bgi");
// read result of initialization
errorcode = graphresult();
if (errorcode != grOk) // an error occurred
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); // return with error code
}

//Inicializando grafico
//Linhas
line(40,40-15,40,400);
line(40,400,565,400);
//Setas
line(40-5,40-15,40+5,40-15);
line(40-5,40-15,40,40-15-15);
line(40,40-15-15,40+5,40-15);

line(565,400-5,565,400+5);
line(565,400-5,565+15,400);
line(565+15,400,565,400+5);

j = 15;
for(i = 0;i <= 16; i++){
//Linhas Pequenas
setcolor(7);
line(40+j+7,maxY*YScale+40,40+j+7,maxY*YScale+40+3);
//Numeros legenda
settextstyle(2, 0,4);
gcvt(i+1,sign,b);
outtextxy(40+j+1,maxY*YScale+40+3,b);

settextstyle(2, 0,4);
yData = faixa[i];
if(faixa[i]==0){
setcolor(7);
settextstyle(2, 0,4);
outtextxy(40+j+5,maxY*YScale+40-15,"0");
}else{
//Defindo Y
Y = (maxY*YScale)-((yData - maxY*YScale+40) * (YScale));
//Plotando no grafico
setcolor(i);
if((i == 0)||(i == 7)) setcolor(9);
if((i == 15))setcolor(4);
if((i == 16))setcolor(2);
rectangle(40+j,Y+40-1,40+j+15,maxY*YScale+40);
//Numeros
gcvt(faixa[i],sign,b);
outtextxy(40+j-5,Y+40-15,b);
}//ELSE
j = j + 30;

}//FOR

getch();
closegraph();
return 0;
}

Programação II

Atividades quarta, 29 abril 2009:

1 - Crie uma classe Retângulo. A classe tem atributos altura e largura, onde cada um tem o valor padrão 1. Ela tem métodos que calculam o perímetro e a área do retângulo. Ela tem métodos get/set para altura e largura. Os métodos set devem garantir que altura e largura são números de ponto flutuante maiores que 0.0 e menores que 20.0. Escreva um programa para testar a classe Retângulo.

Baixar Possível Resolução

Para baixar o JCreator clique aqui.

28 de abril de 2009

História de hoje: Sem Rasuras

25 de abril de 2009

Que horas são?

Resolução - Projeto I - 1º Bimestre

Exercício 2 - Baixar PDF

Exercício 3 - Baixar PDF

Resoluções do professor.

16 de abril de 2009

Programação II

Atividades quarta, 15 abril 2009:

1 - Uma academia de ginástica precisa avaliar o peso de seus alunos. Para isto, precisa calcular a partir da altura e do peso, o coeficiente de gordura. Este coeficiente é calculado através da seguinte fórmula:

coeficiente = peso / altura2

De acordo com o coeficiente, o programa deve dar o resultado segundo a tabela abaixo:

Valor entreResultado
0
15
muito abaixo do peso
16
20
abaixo do peso
21
25
peso ideal
26
30
acima do peso
31
...
muito acima do peso

Crie a classe Coeficiente com os atributos coeficiente, peso e altura (todos do tipo float) e com construtores que atendam às seguintes possibilidades:

- Nenhum parâmetro, inicializa com valores “padrão”;
- Parâmetros de peso e altura do tipo float;
- Parâmetros de peso e altura do tipo int;
- Parâmetros de peso e altura do tipo String;
- Parâmetro do tipo Coeficiente.

Crie métodos para alterar os atributos de peso e altura. Considere que os valores podem ser passados em qualquer um dos tipos: float, int ou String.

Crie métodos para retornar o valor dos atributos coeficiente, peso e altura (sempre do tipo float).

Crie um método igual(Coeficiente c), para verificar a igualdade entre o conteúdo de objetos da classe Coeficiente.

Crie um método toString() que retorna o resultado conforme a tabela acima.


2 - Defina em Java a classe PainelAtendimento cujos objetos representam os painéis eletrônicos normalmente encontrados em agências bancárias para indicar o número da senha da próxima pessoa a ser atendida (ou da última que está sendo atendida, caso todos os atendentes estejam ocupados). Todo painel deve ter como atributo o número da próxima ficha a ser atendida e o número do próximo atendente livre. Além disso, todo painel deve ter os seguintes métodos:


a) construtor, que recebe como parâmetro o número do primeiro atendente livre e o número de atendentes, inicializando o painel com o número do atendente recebido e indicando que a primeira ficha a ser atendida é a ficha 1;

b) indicarProximo, que recebe como parâmetro o número do próximo atendente livre, incrementa e retorna o número da próxima ficha a ser atendida (como as fichas são numeradas de 1 a 99, este método deve reiniciar a contagem assim que chegar a 99). Se este método não receber nenhum parâmetro, retorna o número da ficha que está sendo atendida no momento;

c) getProximas, que retorna como resultado o número de fichas a serem atendidas antes da contagem ser reiniciada;

d) getMelhorAtendente, que retorna o número do atendente que atendeu mais pessoas até o momento.

Baixar Possível Resolução

Para baixar o JCreator clique aqui.

14 de abril de 2009

Samana de Provas!!!

Vamos estudar galera!

13 de abril de 2009

Ano Internacional da Astronomia






Calendário Escolar 2009

Calendário Escolar 2009

9 de abril de 2009

Perguntas e Respostas [Ciência do Ambiente] by Diogo

É eu sei... Ele é Louco...

Grupo I


1) O que os colonizadores encontraram quando aqui chegaram?

R: Mata muito rica (Floresta, Mangue, etc).

2) Quais os principais processos de destruição que começaram a ser evidenciados neste período?

R: Solos degradados, empobrecidos cursos d´agua desestabilizados, florestas destruídas.

3) Qual a forma ou processo de exploração adotada pelos colonizadores?

R: Nomadismo predatório.

4) Qual o método de plantio adotado pelos agricultores da época (Séc. XIX)?

R: Queima das florestas, as cinzas forneciam condições de plantio.

5) Qual a forma que as colônias de exploração atuavam em diferentes regiões do planeta?

R: Elas caracterizaram-se pela brutalidade e pelo imediatismo, sofrendo profundos danos ambientais.

6) Qual o motivo ou razão do processo de exploração pelos colonizadores no Brasil ter sido agravado?

R: Foi agravado três fortes fatores:


  1. A sensação de inesgotabilidade de recursos.

  2. A postura parasita diante dessa abundância natural.

  3. O desprezo pela natureza tropical.
Grupo II

1) Qual a razão do abandono do porto em São Vicente no Litoral Paulista?
R: Ocupação desordenada pela urbanização provocou a devastação das florestas com intensa erosão na área do porto.

2) Qual a consequência da cultura cafeeira na região do Vale do Paraíba?

R: Ocupação das encostas, desmatamento, queimadas sem controle.

3) Quais as consequências do crescimento das cidades e da população promovida pelo ciclo da mineração?

R: Técnicas de cultivo rudimentar levaram ao esgotamento do solo, café de pouca qualidade e queda de produção.

4) Quais as consequências da expansão da cultura da cana de açúcar no nordeste e sudeste?

R: Devastação da Mata Atlântica para expansão de cultura e indústria da cana de açúcar.

5) Quais consequências ambientais da mineração do ouro e diamantes?

R: Encostas foram desflorestadas, desgastadas pela erosão, formando vorrosocas (sulcos profundos na terra), rios foram dragados e tiveram seus curso desviado e poluição por mercúrio.

6) Qual a razão do declínio da cultura do café no Vale do Paraíba?

R: Pelo motivo do esgotamento do solo e o café que era de grande quantidade e pouca qualidade houve a queda da produção.

7) Quais as consequências da ocupação cafeeira na região do Vale do Paraíba?

R: Esgotamento do solo e da extinção das florestas primária.


Grupo III

1) Qual a razão do avanço da degradação da Mata Atlântica no inicio do séc. XX?
R: Economia crescente, aumento da população e falta de combustível fóssil.

2) Quais as consequências da expansão da cultura da soja na região dos cerrados?

R: Bioma de cerrado que é nativo ser transformado em área de monocultura e consequência a degradação.

3) Porque a ocupação da floresta Amazônica corre o risco de promover mais uma vez um grande desastre ecológico?

R: Forma de exploração, a falta de fiscalização nas serrarias e pecuária extensiva.

4) Em que década do século XX inicia-se a ocupação da Amazônia e qual a área devastada no inicio daquela década?

R: Década 70, 1% de área devastada.

5) Quais os fatores que contribuíram para a devastação da mata de araucária?

R: Deve-se aos colonos europeus, que devastaram as florestas para obter madeira para construção e áreas para plantio de milho, trigo e videira.

6) Quais as razões da falta de iniciativa em explorar a Amazônia?

R: Falta de recursos falta de tecnologias para superar as dificuldades de exploração.

7) Quais as implicações ambientais promovidas pelas indústrias siderúrgicas?

R: A principal implicação era o desmatamento das florestas, pois a indústria siderúrgica necessitava da lenha para produzir o ferro gusa.


Grupo IV

1) Qual a razão para que o país, possua apenas 7% da Mata Atlântica e 2% da floresta de araucária?
R: Exploração desordenada, que aos olhos dos europeus eram recursos ilimitados, do período colonial aos dias de hoje.

2) Quais os benefícios do chamado “selo verde”?

R: a exploração racional, com planejamento e minimizando o impacto ambiental, garantindo paisagens saudáveis.

3) Quais seriam as alternativas na tentativa de reverter o modelo colonialista de exploração do território nacional?

R: Investir na conservação permanente do meio ambiente, exploração racional, fiscalização eficiente de ordem governamental.

4) Qual seria uma forma de proteção das florestas que proporcionaria retorno econômico?

R: Conservar para o desenvolvimento criando pontos de ecoturismo.

5) Qual a razão do fracasso dos ciclos econômicos e suas principais consequências?

R: Esgotamento de recursos naturais ou ecossistemas devido à exploração irracional, como consequências o assoreamento de rios, decadência, abandono da agricultura.

6) Porque os recursos naturais são importantes para o futuro das nações e como se situa o Brasil neste contexto?

R: Em um futuro próximo a importância de um país será decidida através da, proporcional posse de biodiversidade e recursos naturais, portanto, o Brasil esta em uma situação, relativamente confortável, desde que saibamos utilizar esses recursos sem desperdício.

7) Quais as consequências do modelo exploratório no plano social e étnico?

R: Uma pequena parcela beneficiada e a grande maioria não beneficiada.


8 de abril de 2009

Programação II

Atividades quarta, 1 abril 2009:

Aproveite a classe Contador implementada em exercício anterior e modifique, se necessário, conforme as seguintes especificações:

Cada instância dessa classe deve ter a seguinte interface:
  • Contador (int maximo); // construtor
  • void incrementa();
  • void zera();
  • int obtemValor();
  • bool verificaOverflow();
O construtor cria um objeto do tipo Contador com um número máximo de contagem, por exemplo, maximo = 9999. Um objeto Contador quando criado tem o valor inicial zero. A operação incrementa() aumenta o contador de 1, e se o contador chega ao número máximo de contagem, ele é automaticamente zerado e o contador se lembra que um evento de overflow ocorreu. A operação zera() atribui ao contador o valor zero e limpa o indicador de overflow; obtemValor() retorna o valor atual do contador, e verificaOverflow() retorna true se um evento de overflow ocorreu e false, caso contrário.

Em seguida, escreva um programa em Java que conta o número de conceitos (notas: A, B, C, D, E) do histórico de um aluno de pós-graduação da UNIVAP.

No seu programa, crie as seguintes classes:

  • Nota: Representa um conceito (A,B,C,D,E). Deve possuir construtor e métodos get/set para edição do valor;
  • Disciplina: Deve armazenar nome e nota, além de ter um construtor que recebe o nome e métodos get/set para editar a nota;
  • Aluno: Deve armazenar a matrícula do aluno e seu histórico. O histórico deve ser um array das disciplinas que o aluno cursa. A classe também deve ter métodos get/set para editar o nome, além de método para adicionar disciplinas e outro para obter o histórico (como array de disciplinas);
  • ContadorTeste: Aplicação principal que demonstra a utilização das demais classes. Deve instanciar um aluno, inserir várias disciplinas e os respectivos conceitos. Finalmente deve imprimir a contagem dos conceitos considerando o histórico do aluno.
Obs: Um objeto Contador deve ser utilizado na contagem dos conceitos.

Baixar Possível Resolução

Para baixar o JCreator clique aqui.

6 de abril de 2009

Vídeos de Cálculo by Diogo


Cálculo I




Cálculo I [2]




Integral Definida




Só falta agora ele fazer os vídeos dos exercícios! ^^

3 de abril de 2009

Provas Anteriores de Estatística

Prova Estatística 01 - Baixar
Prova Estatística 02 - Baixar
Prova Estatística 03 - Baixar
Prova Estatística 04 - Baixar

Baixar Todos

Exemplos Programação II

Contador estatistica[] = new Contador[5];


for(int i=0;i
estatistica[i] = new Contador(10);

....


switch(conceito)
{
case Nota.A: estatistica[0].incrementa();
break;
case Nota.B: estatistica[1].incrementa();
}

////////

estatistica[conceito].incrementa();


int numA = estatistica[Nota.A].obtemValor();
int numB = estatistica[Nota.B].obtemValor();

class Nota
{
public static final int A = 0;
public static final int B = 1;


}