Pesquisar neste blog

sexta-feira, 19 de dezembro de 2008

Código de exemplo de funções em C

#include stdio.h
#include conio.h
#include math.h



float area_raio (int r)
{
return((float)3.14 * r*r);
};

float eq_seg_grau(int a, int b, int c)
{
float x1,x2,D;
D=pow(b,2)-4*(a*c);
printf("\n\n VALOR DE DELTA EH: .0f \n", D);
if(D<0){
printf("Nao existem raizes reais!");
printf("\n\n");
system("pause");
}
else { x1=((-b)+pow(D,0.5))/2*a; x2=((-b)-pow(D, 0.5))/2*a;
printf("x1: .0f\n",x1);
printf("x2: .0f\n",x2);
printf("\n\n");
system("pause");
}
};

float distancia_dois_pontos(int x1, int x2, int y1, int y2)
{
float D;
D = sqrt(pow(x2-x1,2) + pow(y2-y1,2));
return D;
}



main () {

int a,b,c,opcao,r,result_area,rs_pontos,x1,x2,y1,y2;
// FAZER UM PROGRAMA QUE CRIE UM MENU COM AS SEGUINTES OPÇÕES
// [1] - CALCULA DA EQUACAO DO SEGUNDO GRAU
// [2] - CALCULO DA DISTANCIA ENTRE DOIS PONTOS
// [3] - CALCULO DA AREA DO CIRCULO
// [4] - SAIR

//A > 0 2 raizes reais
//A = 0 2 raizes reais e iguais
//A < 0 Raizes imaginarias


//distancia entre dois pontos
// P1 (x1,y1)
// P2 (x2, y2);
// D = sqrt(pow(x2-x1) + pow(y2-y1))




int menu () {
int x;
printf("\n [1] - CALCULA DA EQUACAO DO SEGUNDO GRAU");
printf("\n [2] - CALCULO DA DISTANCIA ENTRE DOIS PONTOS");
printf("\n [3] - CALCULO DA AREA DO CIRCULO");
printf("\n [4] - SAIR");
printf("\n\n DIGITE A OPCAO DESEJADA:");
scanf("%d",&opcao);
return x;
};




int i;
do{
system("cls");
i=menu();

switch (opcao) { //inicio bloco switch

case 1: {
printf("\n\nDIGITE A,B e C RESPECTIVAMENTE:\n");
scanf("%d %d %d",&a,&b,&c);
eq_seg_grau(a, b, c);
break;
}


case 2: {
printf("\nDigite as coordenadas do ponto A(x1,x2): ");
scanf("%d %d",&x1,&x2);
printf("\nDigite as coordenadas do ponto B(y1,y2): ");
scanf("%d %d",&y1, &y2);
rs_pontos = distancia_dois_pontos(x1,x2,y1,y2);
printf("\n A DISTANCIA ENTRE DOIS PONTOS EH: %d",rs_pontos);
printf("\n\n");
system("Pause");
break;
}

case 3: {
printf("\n\n DIGITE O VALOR DO RAIO: ");
scanf("%d",&r);
result_area = area_raio(r);
printf("\n AREA DO RAIO EH: %d",result_area);
printf("\n\n");
system("Pause");
break;
}


case 4: {
system("exit");
break;
}

}
}while (opcao!= 4);

}

quarta-feira, 17 de dezembro de 2008

Exemplo de código em C que imprime a tabela ASCII

#include iostream
int main(){
int i,j=0;

for(i=0;i<255;i++)
{
printf("%d = %c ",i,i);
j++;
if (j == 8) {
printf("\n");
}
}
printf("\n \n \n \n \n %c",181);
system("PAUSE");
}

Código de exemplo usando Herança - C++

// Herança
#include

using namespace std;

enum type {carro, van, wagon};

// Definicao da classe generica veiculo
class veiculo {
int passageiros;
int rodas;

public:
void set_rodas(int num) { rodas = num; } ;
int get_rodas() { return rodas; };
void set_pass(int num) { passageiros = num; } ;
int get_pass() { return passageiros; };

};

// Definicao da classe caminhao
class caminhao : public veiculo {
int carga;
public:
void set_carga(int num) { carga = num; };
int get_carga() { return carga; };
void show();
};


// Definicao da classe automovel
class automovel : public veiculo {
enum type tipo_auto;
public:
void set_type(enum type t) {tipo_auto = t; };
enum type get_type() { return tipo_auto; };
void show();
};


// Descrição das Funções
void caminhao::show()
{
cout << "\nInformacao do Caminhao\n";
cout << "Quantidade de rodas: " << get_rodas() << endl;
cout << "Quantidade maxima de passageiros: " << get_pass() << endl;
cout << "Capacidade maxima para transporte (carga): " << get_carga() << endl;

}

void automovel::show()
{
cout << "\nInformacao do Automovel\n";
cout << "Quantidade de rodas: " << get_rodas() << endl;
cout << "Quantidade maxima de passageiros: " << get_pass() << endl;
cout << "Tipo de automovel: ";

switch(get_type()) {
case van: cout << " Van\n";
break;
case carro: cout << " Carro\n";
break;
case wagon: cout << " Wagon\n";
break;
}
}

int main()
{
caminhao t1, t2;
automovel c;

t1.set_rodas(18);
t1.set_pass(2);
t1.set_carga(3200);

t2.set_rodas(6);
t2.set_pass(3);
t2.set_carga(1200);

t1.show();
t2.show();

c.set_rodas(4);
c.set_pass(10);
c.set_type(van);
c.show();

system("pause");
return 0;
}

Exercício C++ usando herança

Exemplo de exercício em C++ usando herança

#include
#include

using namespace std;


class pessoa {
string nome;
char sexo;
int idade;

public:
pessoa(){};
~pessoa(){};
void set_nome(string nome) { this->nome = nome; };
string get_nome() { return this->nome; };
void set_sexo(char sexo) { this->sexo = sexo; };
char get_sexo(){ return this->sexo; };
void set_idade(int idade) { this->idade = idade; };
int get_idade() { return this->idade; };
};

class aluno: public pessoa {
string disciplinas[10];
int matricula, apt;

public:
aluno() { apt=0; };
~aluno() { };
void set_matricula(int mat){ matricula = mat; };
int get_matricula(){ return matricula; };

void set_disciplinas(string disc)
{
disciplinas[apt] = disc;
apt++;
}
void show_disciplinas()
{
for (int i=0; i < apt; i++)
{
cout <<"Disciplinas:"<< disciplinas[i] << endl;
}
}
};

class professor: public pessoa {
string aulas[10];
int carga_h, apt;
double valor_ch;

public: professor(){ apt = 0;};
~professor(){ };
void set_aulas(string aula) {

aulas[apt] = aula; apt++;
}

void show_aulas() {
for (int i=0; i < apt; i++) {
cout <<"Aulas: "<< aulas[i] << endl;
}
}

void set_ch (int ch) {
carga_h = ch;
};

void set_vh (double vh) {
valor_ch = vh;
};

int get_ch () {
return carga_h;
};

double get_vh () {
return valor_ch;
};
};

void menu() {
cout << " ---- Menu ---- " << endl;
cout << " 1) Cadastrar Professor " << endl;
cout << " 2) Cadastrar Aluno " << endl;
cout << " 3) Listar Professores " << endl;
cout << " 4) Listar alunos " << endl;
cout << " 5) Sair " << endl;
cout << " --------------- " << endl;
cout << endl; }

int main (){

string nome, aulas, disciplinas;
int idade_, cargah, matricula;
char sexo;
double vcargah;
bool exec = true;
char op;
int apt=0;
professor profs[3];
aluno alunos[5];

do {

menu();
cout << "Opcao: " ; cin >> op;

switch(op)
{
case '1':
for (int i=0; i <3>> nome;
profs[i].set_nome(nome);
cout <<"Entre com a idade do prof.:" ; cin >> idade_;
profs[i].set_idade(idade_);
cout <<"Entre com o sexo do prof.:" ; cin >> sexo;
profs[i].set_sexo(sexo);

for (int j=0; j<3;>> aulas;
profs[i].set_aulas(aulas);
}
cout <<"Entre com a carga horaria prof.:" ; cin >> cargah;
profs[i].set_ch(cargah);
cout <<"Entre com o valor carga horaria prof.:" ; cin >> vcargah;
profs[i].set_vh(vcargah);
cout <<"\n----------------" << i="0;">> nome;
alunos[i].set_nome(nome);
cout <<"Entre com a idade:" ; cin >> idade_;
alunos[i].set_idade(idade_);
cout <<"Entre com o sexo:" ; cin >> sexo;
alunos[i].set_sexo(sexo);

for (int j=0; j<3;>> disciplinas;
alunos[i].set_disciplinas(disciplinas);
}

cout <<"Entre com a matricula:" ; cin >> matricula;
alunos[i].set_matricula(matricula);
cout <<"\n----------------" << endl;
}

break;
case '3':
system("cls");
for (int i=0; i <3 ; i++)
{

cout <<"Nome do prof:"<<>
cout <<"Idade do prof.:"<<>
cout <<"Sexo do prof.:"<<>

for (int j=0; j<3; j++){
cout <<"Aula prof.:" <<>
}

cout <<"Carga horaria prof.:"<<>
cout <<"Valor carga horaria prof.:" <<>
cout <<"\n----------------" << endl;
}

break;
case '4':

system("cls");
for (int i=0; i <3 ; i++)
{

cout <<"Nome do aluno:"<<>
cout <<"Idade do aluno.:"<<>
cout <<"Sexo do aluno.:"<<>
cout <<"\n----------------" << endl;
}

break;
case '5':
exec = false;
break;
default:
{
cout << "Opcao Invalida! " << endl;
}
break;
}
} while(exec);


system("pause");
return 0;

}


Herança - Virtual - C++

#include
using namespace std;

class Base {
public:
virtual void show () = 0;
};

class D_Class: public Base {
public:
virtual void show () { cout << " D_Class \n"; }
};


class D_Class2: public Base {
public:
virtual void show () { cout << " D_class2 \n"; }
};


int main()
{

D_Class b;
D_Class2 c;

b.show();
c.show();


cin.get();
return 0;
}

Herança C++

Segue abaixo um exemplo de herança em C++.


#include
using namespace std;

class X{
protected: int x;

public:
void set_x(int _x) { x = _x; }
int get_x(){ return x; }
};


class Y : protected X {

protected: int y;
public:
void set_y(int _y) { y = _y; }
int get_y(){ return y; }
};


class Z: public Y
{
public:
void show()
{
cout << " X * Y " << x * y << endl;
}
};



int main()
{

Z val;
//val.set_x(20);
val.set_y(5);
val.show();
cin.get();
return 0;
}


Classes e Objetos

Seguem abaixo um exemplo de código de como inicializar e destruir um objeto.


#include
using namespace std;
class Base {
protected: int b;
public:
Base(int _b) { b = _b ; cout << " Objeto do tipo classe Base inicializado !! \n"; }
~Base() { cout << " Objeto do tipo classe Base destruido !! \n"; }
};

class D_Class: public Base {
int d;
public:
D_Class(int _b, int _d) : Base(_b)
{ d = _d; cout << " Objeto do tipo classe D_Class inicializado !! \n"; }
~D_Class() { cout << " Objeto do tipo classe D_Class destruido !! \n"; }
void show() { cout << " B " << b << " D " << d << endl;}
};


int main()
{
D_Class var(2,3);
var.show();
cin.get();
return 0;
}

quinta-feira, 11 de dezembro de 2008

Instalando o OC4J - (Oracle Containers for J2EE)

Vou fazer demonstrar abaixo como efetuar a instalação do oc4j no sistema operacional CentOS 5.2, tendo em vista que você já tenha o java JDK 1.5 ou 1.6 instalado em seu ambiente.

Primeiramente vamos fazer o Download OC4J 10g ou diretamente clicando no link abaixo:
Oracle Containers for J2EE 10g (OC4J) .

O arquivo que será baixado está no formato .zip, então vamos descompactá-lo:

[root@centos ]# unzip oc4j_extended_101340.zip

Agora vamos mover o diretório criado para um local adequado.

[root@centos ]# mv oc4j /usr/local

Agora, antes de inicializamos o serviço, vamos setar a seguinte variável de ambiente informando o local onde está a instalação do oc4j:

Edite o arquivo /etc/profice com o seguinte conteúdo:

[root@centos ]# vim /etc/profile

export ORACLE_HOME=/usr/local/oc4j

Salve e saia.
Execute o comando abaixo para que os parâmetros sejam executados.
[root@centos ]# source /etc/profile

Pronto, agora vamos executar o servidor.

Quando o oc4j é executado pela primeira vez, o mesmo solicita que criemos uma senha para acesso a sua console de administração:

[root@centos ]# /usr/local/oc4j/bin/oc4j start

08/12/08 14:21:28 Set OC4J administrator's password (password text will not be displayed as it is entered)
Enter password: xxxxxx

Confirm password: xxxxxx
The password for OC4J administrator "oc4jadmin" has been set.
08/12/08 14:21:53 The OC4J administrator "oc4jadmin" account is activated.

Agora o serviço já está rodando e sua porta de escuta é a 8888.

Agora vamos acessar a sua console pelo seguinte endereço:

http://endereco-do-servidor-oc4j:8888/em

Coloque os dados da conta de oc4admin.


Tela da console depois de logada:






Alterando parametros do Oracle

Para quem precisar alterar certos parâmetros do oracle, como formato da data, charset ou linguagem segue a dica abaixo.

Visualizando parâmetros padrões do Oracle

Tendo em vista que você já esteja conectado ao Oracle usando o SQL Developer ou semelhante digite a seguinte linha de comando para listar os parâmetros:

SELECT * FROM v$nls_parameters;

Alterando parâmetros da base

Agora vamos dar um exemplo de como alterar o parâmetro do formato da data executando o comando abaixo:

ALTER SESSION SET NLS_DATE_FORMAT = 'DD/MM/RRRR'


Segue imagem abaixo demonstrando os procedimentos acima: