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;