Explicações de Programação em JAVA!!!

Camara

Power Member
Olá a todos!
Neste momento encontro-me no 1ºano em Engenharia Informática, e estou com dificuldades em programação. Reprovei nas 2 frequências e sinto-me um bocado à
deriva! No 2º semestre vou ter uma cadeira "Algoritmos e estruturas de dados" e a coisa vai complicar!
Este meu tópico serve para saber se algum de vocês tem conhecimento, onde posso ter explicações de programação, nomeadamente em java, uma vez que não encontro outra alternativa.
Estou a dar em paranóico!!!

Abraço.
 
Estás em que faculdade, FCUL?
Bom anyway, se não conseguiste fazer programação básica(aka Introdução à programação), torna-se bastante complicado fazer AED, vais dar estruturas de dados que em nada têm a ver com a programação em java do 1º semestre.
Em todo o caso aconselho-te a treinares o exercicíos/guiões/etc que te foram dados ao longo do semestre passado, e dar uma vista de olhos na matéria seguinte(para AED), quem sabe comprar o livro da cadeira.
Tens aqui um livro com explicações bastante detalhadas -> Programação, Algoritmos e Estruturas de Dados

Cumps
 
Epa Java é uma confusão, eu dei no 2º ano uni e como nunca fiz nada com isso nem me lembro de metade das coisas.. boa sorte :(

Não sei se online aranjas alum material para isso, vou tentar ver se ainda tenho alguma coisa
 
Java até é uma das linguagens mais simples que há por aí agora..., evita-te mesmo muito trabalho com alguns tipos de operações nomeadamente gestor de memória e garbage collector...

Sobre explicações, sinceramente as melhores explicações que podes arranjar é um livro qualquer com exercícios, ou então um bom livro de java. Recomendo-te o Thinking in Java de Bruce Eckel, é um ebook gratuito ;)

abraços, HecKel
 
Eu acho que o meu problema, é mesmo entrar na lógica! Comprei o livro da cadeira do Prof. João Neto. Quando acho que estou a perceber, vou tentar resolver um problema fico baralhado....
 
AED deve ser 5x mais complicado que IP, mas como vais ter no semestre LabP, pode ser que te ajude. Aplica-te bem a LabP, para perceberes bem AED, mas as duas cadeiras vão andar de mãos dadas, se tiveres dúvidas em resolver os exercícios de LabP, pede ajuda aos teus colegas, é uma cadeira muito facil de ter aprovação e até uma nota de jeito.
Este ano vou fazer LabP como melhoria, mas AED estou inscrito mesmo. Já IP completei este semestre.

Quaisquer dúvida, usa e abusa do fórum, é para isso que ele serve, dúvidas implica a não resolução de problemas por inteiro ;)
 
o truque está mesmo em praticar e isto n vai lá com explicações, talvez umas introduções básicas. Para isso sugiro os tutoriais q tens no site da java.sun.com Tens q arregaçar as mangas, pegar no gel, eclipse ou outro qq e resolver exercicios. Tens q perder tempo se quiseres ganhar competências pq se tas nesse curso possivelmente n vais ver mais nada a n ser programação a tua frente e principalmente nos teus primeiros anos de trabalho
 
Digo-te que na FCUL, tens Java em todos os semestres, excepto o ultimo(3º ano, 2º semestre) e no terceiro semestre(2º ano, 1º semestre), falando num licenciatura pós-bolonha.
Como já foi dito, faz muitos exercícios para treinares também a tua lógica operacional.
 
olha um camarada da FCUL :D

IP, AED e Labp são faceis. DCO é que dá trabalho. pa é assim, é essencial ires as aulas teoricas e práticas de IP (e acabares os ex's que nao conseguires acabar nas aulas praticas). Se fizeres isso ´+e meio caminho andado para ficares a perceber minimamente de java, e safas-te a aed e labp ;)
 
Ena tanta gente da FCUL.
Só uma pequena correcção ao MadOnion, tb tens JAVA no 3º ano 2ºsem, na bela cadeira de Segurança, onde se estuda a sandbox do JAVA entre outras coisas engraçadas :P
Aliás se há coisa que se aprende bem na FCUL essa coisa é JAVA e isto só se aprende escrevendo muitas linhas de código.

O meu conselho, como já muitos disseram, é treinar muito, descansa que LabP te vai dar um grande impulso, se levares a cadeira com vontade e te aplicares ficas bem preparado para o resto do curso.

Abraços
 
offtopic: RS, tens um Clio III RS? (assim se vir na fcul algum, ja sei que és tu :P

ontopic: labp é mt porreiro, ali é que ficas a perceber de java, cada trabalho semanal de labp equivalem prai ao ultimo trabalho de ip :D
 
Uma dica, antes de pegar no Eclipse e afins, faz o teu raciocínio no papel através de pseudo-código, com um fluxograma ou um diagrama de blocos.
Quando dominares a lógica dominas a programação ;)

cumps e força nisso.

PS: Já agora aproveito para partilhar este link .
 
offtopic: RS, tens um Clio III RS? (assim se vir na fcul algum, ja sei que és tu :P

[offtopic]
Nepes a minha onda é mais carros a sério tipo Focus :P
Mas com mta pena minha não tenho nenhum RS
[/offtopic]

O Eclipse por acaso é um bom IDE, faz a papinha toda, mas para aprender não acho que seja o ideal. Para grandes projectos com montes de classes aí sim mostra o valor :)
Eu aprendi com Emacs e linha de comandos, e acho que deu resultado.
 
Boas!
Eu precisava de uma ajudinha aqui com um codigo de programacao.

Tenho de fazer um jogo de Ludo, nao sei se conhecem, http://www.youtube.com/watch?v=22amEq9K-qg .

Nesta fase do trabalho muitas regras ficaram de fora mas ainda assim estou com alguns problemas.

Estou a usar o eclipse e tenho 3 classes:
Main, classe de comando
DiceGenerator, que cria um valor para o dado
Pawn, que faz o peao andar.

Main:


import java.util.Scanner;


public class Main {


public static void main(String[] args) {
int op;

Scanner s = new Scanner (System.in);
Pawn p = new Pawn ();

Dice d = new Dice();
op = 0;

while (op != 2) {
System.out.println (" Choose an Option ");
writeMenu();
op = s.nextInt ();
processOp (op, s, p, d);
}
}


private static void writeMenu() {
System.out.println (" 1 - Roll Dice and Move Pawn ");

System.out.println (" 2 - Exit ");

}

private static void processOp(int op, Scanner s, Pawn p, Dice d) {

switch (op) {

case 1:
p.MovePawn();

break;
case 2:
System.out.println (" Program Terminated! ");
default: System.out.println("Invalid Option") ;
}
}
}

DiceGenerator:
import java.util.Random;


public class Dice {


public static final int INTERVALMIN = 1;
public static final int INTERVALMAX = 6;




public int DiceGenerator(){
int dist = INTERVALMAX - INTERVALMIN + 1;
Random d = new Random();
return d.nextInt(dist) + INTERVALMIN;
}
}

Pawn:




public class Pawn {

private int Color;
private int GreenPawn;
private int YellowPawn;
private int RedPawn;
private int BluePawn;


public Pawn(){

GreenPawn = 57;
YellowPawn = 57;
RedPawn = 57;
BluePawn = 57;
}

public String MovePawn () {
Dice l = new Dice ();
Color = 0;
while(GreenPawn > 0 && YellowPawn > 0 && RedPawn > 0 && BluePawn > 0)
if (Color == 0){
GreenPawn = GreenPawn - l.DiceGenerator();
Color++;
return "Player Green, Dice" + l.DiceGenerator() + " Left " + GreenPawn;

} else if (Color == 1) {
YellowPawn = YellowPawn - l.DiceGenerator();
Color ++;
return "Player Yellow, Dice" + l.DiceGenerator() + "Left " +YellowPawn;

} else if (Color == 2) {
RedPawn = RedPawn - l.DiceGenerator();
Color ++;
return "Player Red, Dice" + l.DiceGenerator() + "Left " + RedPawn;

} else if (Color == 3) {
BluePawn = BluePawn - l.DiceGenerator();
Color = 0;
return "Player Blue, Dice" + l.DiceGenerator() + "Left " + BluePawn;

} else ;
return "Game Over";

}


}

Apesar de nao existirem erros o programa nao corre.... Ajuda por favor!
 
Back
Topo