JAVA

C

1. HELLO WORLD!

public class HelloWorld {

  public static void main(String[] args) {

    System.out.println("Hello World!");

  }

}

#include <stdio.h>

int main() {

  printf("Hello World!\n");

  return 0;

}

2. ESTRUTURA SIMPLES

 

 

 

public class pesoAltura {

  int peso; // peso em quilogramas

  int altura; // altura em centimetros

}

 

public class EstruturaSimples {

  public static final int alturaMaxima = 225;

  public static void main(String[] args) {

    pesoAltura pessoa1 = new pesoAltura();

    pessoa1.peso = 80;

    pessoa1.altura = 185;

   

    System.out.print("Peso: " + pessoa1.peso + ", Altura "+pessoa1.altura+". ");

    if (pessoa1.altura>alturaMaxima) {

      System.out.println("Altura acima da maxima.\n");

    }

    else System.out.println("Altura abaixo da maxima.\n");

  }

}

#include <stdio.h>

#define alturaMaxima 225

 typedef struct

{

  int peso; // peso em quilogramas

  int altura; // altura em centimetros

} pesoAltura;

 

 

 

int main() {

  pesoAltura pessoa1;

  pessoa1.peso = 80;

  pessoa1.altura = 185;

 

  printf("Peso: %d, Altura %d. ", pessoa1.peso, pessoa1.altura);

  if (pessoa1.altura>alturaMaxima) {

    printf("Altura acima da maxima.\n");

  }

  else printf("Altura abaixo da maxima.\n");

 

  return 0;

}

3. BUBBLE SORT

 

 

 

public class meuVetor{

  public static int numeroMaximoDeElementos = 50;

  int numeroDeElementos;

  int[] elemento = new int[numeroMaximoDeElementos];

}

 

public class BubbleSort {

  public static meuVetor ordenar(meuVetor pEntrada){

       int n = pEntrada.numeroDeElementos;

       for (int i=1;i<n;i++){

         for (int j=1;j<n-i+1;j++){

             if (pEntrada.elemento[j-1] > pEntrada.elemento[j]){

               int temp = pEntrada.elemento[j];

               pEntrada.elemento[j]=pEntrada.elemento[j-1];

               pEntrada.elemento[j-1]=temp;

             }

         }

    }

  return pEntrada;

  }     

      

  public static void main(String[] args) {

    meuVetor entrada = new meuVetor();

    entrada.elemento[0] = 2;

    entrada.elemento[1] = 4;

    entrada.elemento[2] = 1;

    entrada.elemento[3] = 5;

    entrada.elemento[4] = 3;

    entrada.numeroDeElementos = 5;

 

    meuVetor resultado = ordenar(entrada);

 

    for (int i=0;i<entrada.numeroDeElementos;i++){

      System.out.print(resultado.elemento[i] + " ");

    }

  }

 }

 

#include <stdio.h>

#define numeroMaximoDeElementos 50 

typedef struct

{

  int numeroDeElementos;

  int elemento[numeroMaximoDeElementos];

} meuVetor;

 

 

meuVetor ordenar(meuVetor pEntrada){

  int n = pEntrada.numeroDeElementos;

  for (int i=1;i<n;i++){

       for (int j=1;j<n-i+1;j++){

         if (pEntrada.elemento[j-1] > pEntrada.elemento[j]){

           int temp = pEntrada.elemento[j];

              pEntrada.elemento[j]=pEntrada.elemento[j-1];

             pEntrada.elemento[j-1]=temp;

         }

       }

  }

  return pEntrada;

}

 

 

int main() {

  meuVetor entrada;

  entrada.elemento[0] = 2;

  entrada.elemento[1] = 4;

  entrada.elemento[2] = 1;

  entrada.elemento[3] = 5;

  entrada.elemento[4] = 3;

  entrada.numeroDeElementos = 5;

            

  meuVetor resultado = ordenar(entrada);

 

  for (int i=0;i<entrada.numeroDeElementos;i++){

    printf("%d ", resultado.elemento[i]);

  }

  return 0;

}

 

 

 

 

 

 

Exemplos apenas em C++:

CONVERSÃO DE UNIDADES

 

#include <stdio.h>

int main() {

  char minhaLetra = 'L';

  printf("Letra: %c\n",minhaLetra); 

  printf("Letra como inteiro: %d\n",minhaLetra);

  printf("Letra como ponto flutuante: %f\n",minhaLetra);

  int meuInteiro = minhaLetra;

  printf("Inteiro: %d\n",minhaLetra);

  return 0;

}

 

PONTEIROS 1

 

#include <stdio.h>

#include <malloc.h>

 

typedef struct {

  int peso; // peso em quilogramas

  int altura; // altura em centimetros

} pesoAltura;

 

typedef pesoAltura* PONT;

 

int main() {

  PONT p = (PONT) malloc(sizeof(pesoAltura));

  p->peso = 80;

  p->altura = 185;

  printf("Peso: %d, Altura %d.\n ", p->peso, p->altura);

 

  free(p);

 

  printf("Peso: %d, Altura %d.\n ", p->peso, p->altura);

  // Este printf tenta acessar o espaço em memória já liberado. C++ permite que isso seja feito, mas não garante o conteúdo da memória. Isso nunca deve ser feito num programa real (acessar memória já liberada).

 

  return 0;

}

 

 

VETOR EM MEMORIA

#include <stdio.h>

#include <malloc.h>

 

int main(){

    int n = 10;

    printf("Tamanho de um 'int' em bytes: %d\n", sizeof(int));

    int *ApVet = (int*) malloc(sizeof(int)*n);

    printf("Endereco em memoria: %d\n", *ApVet);   

    // Armazenando valores na memoria

    for (int i=0;i<n;i++){

      ApVet[i] = i+1;

    }

   

    int *posicaoDeArmazenamento = ApVet;

    //Imprimindo valores armazenados

    for (int i=0;i<n;i++){

      printf("Posicao: %ld,  valor: %ld\n", posicaoDeArmazenamento, * posicaoDeArmazenamento);

      posicaoDeArmazenamento++;

    }

    return 0;

}

///////////////////// Resultado da execução desse programa

Tamanho de um 'int' em bytes: 4

Endereco em memoria: 3998072

Posicao: 4016344 | 4016344 => valor: 1 

Posicao: 4016348 | 4016348 => valor: 2 

Posicao: 4016352 | 4016352 => valor: 3 

Posicao: 4016356 | 4016356 => valor: 4 

Posicao: 4016360 | 4016360 => valor: 5 

Posicao: 4016364 | 4016364 => valor: 6 

Posicao: 4016368 | 4016368 => valor: 7 

Posicao: 4016372 | 4016372 => valor: 8 

Posicao: 4016376 | 4016376 => valor: 9 

Posicao: 4016380 | 4016380 => valor: 10 

 

 

 

 

OBJETOS - JAVA

 

public class E4_Ponteiros1 {

 

  public static void main(String[] args) {

    pesoAltura pessoa1 = new pesoAltura();

    pessoa1.peso = 80;

    pessoa1.altura = 185;

    System.out.println("1. Peso: " + pessoa1.peso + ", Altura "+pessoa1.altura+". ");

    atualizaEImprimePeso1(pessoa1.peso);

    System.out.println("2. Peso: " + pessoa1.peso + ", Altura "+pessoa1.altura+". ");

    atualizaEImprimePeso2(pessoa1);

    System.out.println("3. Peso: " + pessoa1.peso + ", Altura "+pessoa1.altura+". ");

    Integer pesoTemp = new Integer(pessoa1.peso);

    atualizaEImprimePeso3(pesoTemp);

    pessoa1.peso = pesoTemp.intValue();

    System.out.println("4. Peso: " + pessoa1.peso + ", Altura "+pessoa1.altura+". ");

  }

        

  public static void atualizaEImprimePeso1(int peso1){

    peso1 = peso1-10;

  }

 

  public static void atualizaEImprimePeso2(pesoAltura pessoa){

    pessoa.peso-=5;

  }

        

  public static void atualizaEImprimePeso3(Integer peso){

    System.out.print("   Peso sendo atualizado de "+peso.intValue());

    peso = new Integer(peso.intValue()-5);

    System.out.println(" para "+peso.intValue());

  }

}

 ///////////////////// Resultado da execução desse programa

1. Peso: 80, Altura 185.

2. Peso: 80, Altura 185.

3. Peso: 75, Altura 185.

   Peso sendo atualizado de 75 para 70

4. Peso: 75, Altura 185.

 

 

PONTEIROS2

 

#include <stdio.h>

#include <malloc.h>

 

typedef struct {

  int peso; // peso em quilogramas

  int altura; // altura em centimetros

} pesoAltura;

 

typedef pesoAltura* PONT;

 

void atualizaEImprimePeso1(int pesoEntrada){

  int pesoAntigo = pesoEntrada;

  int pesoNovo = pesoAntigo - 5;

  pesoEntrada = pesoNovo;

  printf("   Peso antigo: %d, Peso novo %d.\n", pesoAntigo, pesoNovo);

}

 

void atualizaEImprimePeso2(PONT ponteiro){

  int pesoAntigo = ponteiro->peso;

  int pesoNovo = pesoAntigo - 5;

  ponteiro->peso = pesoNovo;

  printf("   Peso antigo: %d, Peso novo %d.\n", pesoAntigo, pesoNovo);

}

 

void atualizaEImprimePeso3(pesoAltura entrada){

  int pesoAntigo = entrada.peso;

  int pesoNovo = pesoAntigo - 5;

  entrada.peso = pesoNovo;

  printf("   Peso antigo: %d, Peso novo %d.\n", pesoAntigo, pesoNovo);

}

 

 

 

 

int main() {

  PONT p = (PONT) malloc(sizeof(pesoAltura));

  p->peso = 80;

 

  p->altura = 185;

 

  printf("1. Peso: %d, Altura %d.\n", p->peso, p->altura);

  atualizaEImprimePeso1(p->peso);

  printf("2. Peso: %d, Altura %d.\n", p->peso, p->altura);

 

  atualizaEImprimePeso2(p);

  printf("3. Peso: %d, Altura %d.\n", p->peso, p->altura);

 

  pesoAltura pessoa1 = *p;

  atualizaEImprimePeso3(pessoa1);

  printf("4. Peso: %d, Altura %d.\n", p->peso, p->altura);

  printf("5. Peso: %d, Altura %d.\n", pessoa1.peso, pessoa1.altura);

  p->peso = p->peso-5;

  printf("6. Peso: %d, Altura %d.\n", p->peso, p->altura);

  printf("7. Peso: %d, Altura %d.\n", pessoa1.peso, pessoa1.altura);

  free(p);

  return 0;

}

 

///////////////////// Resultado da execução desse programa

1. Peso: 80, Altura 185.

   Peso antigo: 80, Peso novo 75.

2. Peso: 80, Altura 185.

   Peso antigo: 80, Peso novo 75.

3. Peso: 75, Altura 185.

   Peso antigo: 75, Peso novo 70.

4. Peso: 75, Altura 185.

5. Peso: 75, Altura 185.

6. Peso: 70, Altura 185.

7. Peso: 75, Altura 185.

 

MULTIPLOS ARQUIVOS DE CÓDIGO

 

//arquivo exemploImprimir.h

#include <stdio.h>

#define MAX 50

 

typedef int EXEMPLO;

 

void imprimirA();

void imprimirB();

void imprimirC();

 

//arquivo exemploImprimir.c

#include "exemploImprimir.h"

 

void imprimirA(){

  printf("A\n");

}

 

void imprimirB(){

  printf("B\n");

}

 

void imprimirC(){

  printf("C\n");

}

 

//arquivo testaImprimir.c

#include "exemploImprimir.c"

 

int main() {

  imprimirA();

  imprimirB();

  imprimirC();  

 

  EXEMPLO teste = 1;

  printf("Valor do teste: %d, valor maximo: %d\n", teste, MAX);

}

 

ORDEM DOS METODOS

// arquivo OrdemDosMetodos.c

#include "OrdemDosMetodos.h"

 

void imprimiESubtrai1(int entrada){

  printf("%d ",entrada);

  if (entrada>0){

    imprimiESubtrai2(entrada-1);

  }

}

 

void imprimiESubtrai2(int entrada){

  printf("%d ",entrada);

  if (entrada>0){

    imprimiESubtrai1(entrada-1);

  }

}

 

int main(){

    imprimiESubtrai1(10);

    return 0;

}

 

// Arquivo OrdemDosMetodos.c

#include <stdio.h>

void imprimiESubtrai1(int entrada);

void imprimiESubtrai2(int entrada);

 

Estrutura em C que se auto-referencia:

typedef struct AuxNo {

  int numregs;                /* número de registros no nó (1 ou 2) */

  Aluno info[3];              /* registros de informação */

  struct AuxNo * filhos[4];   /* subárvores */

  } No;