tugas strukdat
TRANSCRIPT
1.tugas ADT segi empat
package ADT;
class SegiEmpat {
// Deklarasi atribut
private float panjang, lebar;
// Definisi konstruktor
public SegiEmpat() {
panjang = 0;
lebar = 0;
}
public SegiEmpat(float p, float l) {
panjang = p;
lebar = l;
}
// Definisi layanan
public float GetPanjang() {
return (panjang);
}
public float GetLebar() {
return (lebar);
}
public float Luas() {
return (panjang*lebar);
}
}
// Program kelas utama
public class adtsegiempat {
// Deklarasi fungsi program utama
public static void main(String args[]) {
// Penciptaan objek dari kelas SegiEmpat
SegiEmpat S = new SegiEmpat(17, 8);
// Manipulasi objek
System.out.println("Panjang =" + S.GetPanjang());
System.out.println("Lebar = " + S.GetLebar());
System.out.println("Luas = " + S.Luas());
}
}
2. Tugas Liststatic
package tugas41;
class NilaiMatKul{
String nim;
String nama;
String nilai;
NilaiMatKul(){
}
}
class Elemen{
NilaiMatKul elmt;
int next;
Elemen(){
elmt = new NilaiMatKul();
}
}
class List{
int first;
Elemen[] data=new Elemen[10];
List(){
for(int i=0;i<10;i++){
data[i]=new Elemen();
}
}
void createList(){
first = -1;
int i;
for(i=0;i<10;i++){
data[i].next=-2;
}
}
int countElement(){
int hasil = 0;
if(first != -1){
int elmt;
elmt=first;
while(elmt !=-1){
hasil=hasil+1;
elmt = data[elmt].next;
}
}
return hasil;
}
int emptyElement(){
int hasil= -1;
if(countElement()<10){
boolean ketemu =false;
int i =0;
while((ketemu==false)&&(i<10)){
if(data[i].next==-2){
hasil=i;
ketemu = true;
}
else{
i=i+1;
}
}
}
return hasil;
}
void addFirst(String nim, String nama,String nilai){
if(countElement()<10){
int indeks= emptyElement();
data[indeks].elmt.nim=nim;
data[indeks].elmt.nama=nama;
data[indeks].elmt.nilai=nilai;
if(first==-1){
data [indeks].next=-1;
}else{
data[indeks].next=data[first].next;
}
first=indeks;
}
else{
System.out.println("sudah tidak dapat ditambah");
}
}
void addAfter(int prec, String nim, String nama, String nilai){
if(countElement()<10){
int indeks=emptyElement();
data[indeks].elmt.nim=nim;
data[indeks].elmt.nama=nama;
data[indeks].elmt.nilai=nilai;
data[indeks].next= data[prec].next;
data[prec].next=indeks;
}else
{
System.out.println("sudah tidak dapat ditambah");
}
}
void addLast(String nim, String nama, String nilai){
if(first==-1){
int indeks=0;
data[indeks].elmt.nim=nim;
data[indeks].elmt.nama=nama;
data[indeks].elmt.nilai=nilai;
data[indeks].next=-1;
first=indeks;
}else{
if(countElement()<10){
int indeks = emptyElement();
data[indeks].elmt.nim=nim;
data[indeks].elmt.nama=nama;
data[indeks].elmt.nilai=nilai;
data[indeks].next=-1;
int last=first;
while(data[last].next !=1){
last=data[last].next;
}
data[last].next=indeks;
}else{
System.out.println("sudah tidak dapat ditambah");
}
}
}
void delFirst(){
if(first !=-1){
int elmt=first;
first=data[first].next;
data[elmt].next=-2;
}else{
System.out.println("list kosong");
}
}
void delAfter(int prec){
int elmt=data[prec].next;
data[prec].next=data[elmt].next;
data[elmt].next=-2;
}
void delLast(){
if(first !=1){
if(countElement()==1){
delFirst();
}else{
int last=first;
int before_last=-1;
while(data[last].next !=-1){
before_last=last;
last=data[last].next;
}
data[before_last].next=-1;
data[last].next=2;
}
}else{
System.out.println("list kosong");
}
}
void printElement(){
if(first !=-1){
int elmt = first;
int i =1;
while(elmt !=-1){
System.out.println("elemen ke :" + i);
System.out.println("nim :" + data[elmt].elmt.nim);
System.out.println("nama :" + data[elmt].elmt.nama);
System.out.println("nilai :" + data[elmt].elmt.nilai);
System.out.println("next :" + data[elmt].next);
System.out.println("-------------------------------");
elmt = data[elmt].next;
i=i+1;
}
}else{
System.out.println("list kosong");
}
}
void delAll(){
int i;
for(i=countElement();i>=1;i--){
delLast();
}
}
}
class CobaListStatic{
public static void main(String[]args){
List L =new List();
L.createList();
L.printElement();
System.out.println("=======================");
L.addFirst("13501019","Andik","A");
L.addAfter(L.first,"13501037","Shalahuddin","A");
L.addLast("13501058", "Rosa", "A");
L.printElement();
System.out.println("===============================");
L.delLast();
L.delAfter(L.first);
L.delFirst();
L.printElement();
System.out.println("=================================");
}
}
Hasil =list kosong
=======================
elemen ke :1
nim :13501019
nama :Andik
nilai :A
next :2
-------------------------------
elemen ke :2
nim :13501058
nama :Rosa
nilai :A
next :-1
-------------------------------
===============================