Sabtu, 10 November 2012

Soal UTS Algoritma & Pemrograman Looping (Java) - Lanjutan

Berikut lanjutan soal dan jawaban UTS Algoritma & Pemrograman yang sudah dikerjakan teman saya yang bernama Jessica. Semoga bermanfaat buat teman-teman sebagai tambahan bahan belajar.
  1. Buatlah program untuk menerima input bilangan bulat positif sembarang (jumlah digit tidak ditentukan) dan  menampilkan kembali bilangan tersebut dengan urutan digit pertamanya diganti dengan 9. Contoh: input = 43521, output = 93521
import java.util.Scanner;

/**
 * @fitrianadz
 */
public class Exercises {

 /**
  * @param args the command line arguments
  */
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);

  int inputValue;
  System.out.print("input n = ");
  inputValue = input.nextInt();

  int temp = 0; // to copy inputValue
  int counter = 0; // to count digits
  int result = 0;
  int multiplier = 1;

  /*
   * condition (inputValue > 9) indicates that we don't need to process anymore
   * when inputValue contains only 1 digit
   */
  while (inputValue > 9) {
   temp = inputValue;
   inputValue = inputValue / 10;
   int lastDigit = temp % 10;
   if (counter == 0) {
    result = lastDigit;
   } else {
    result = result + (lastDigit * multiplier);
   }
   multiplier = multiplier * 10;
   counter++;
  }

  result = result + (9 * multiplier);
  System.out.println(result);
 }
}


2.   Buatlah program untuk menerima input bilangan bulat positif sembarang (jumlah tidak  ditentukan) dan menampilkan kembali bilangan tesebut dengan urutan digit pertamanya diganti ditukar dengan digit terakhir.
contoh:
input = 43521
output = 13524

import java.util.Scanner;

/**
 * @fitrianadz
 */
public class Exercises {

 /**
  * @param args the command line arguments
  */
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);

  int inputValue;
  System.out.print("input n = ");
  inputValue = input.nextInt();

  int temp = 0; // to copy inputValue
  int counter = 0; // to count digits
  int prefix = 0;
  int lastDigit = 0;
  int multiplier = 0;
  int result = 0;

  while (inputValue != 0) {
   temp = inputValue;
   inputValue = inputValue / 10;
   lastDigit = temp % 10;
   if (inputValue != 0) {
    if (counter == 0) {
     multiplier = 10;
     prefix = lastDigit;
    } else if (counter > 0 && temp > 9) {
     result = result + (lastDigit * multiplier);
     multiplier = multiplier * 10;
    }
    counter++;
   }
  }
  result = (prefix * multiplier) + result + lastDigit;
  System.out.println(result);
 }
}

3.  Buatlah program untuk menerima input bilangan bulat positif n dan selanjutnya mengeluarkan output pola segitiga seperti contoh berikut.
input n = 4
output =
1
23
456
78910
import java.util.Scanner;

/**
 * @author user
 */
public class Exercises {

 /**
  * @param args the command line arguments
  */
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);

  int inputValue;

  System.out.print("value = ");
  inputValue = input.nextInt();

  int counter = 0;
  for (int i = 1; i <= inputValue; i++) {
   for (int j = 1; j <= i; j++) {
    counter++;
    System.out.print(counter + " ");
   }
   System.out.println();
  }
 }
}

4. Hitunglah deret berikut ini untuk melakukan pendekatan terhadap nilai Pi
    Pi = 4(1-1/3+1/5-1/7+1/9-1/11.........-1/(2i-1)+1/2i+1)

   Tampilkan nilai Pi pada layar untuk nilai i yang diinput dari keyboard.
import java.util.Scanner;

/**
 * @author user
 */
public class Exercises {

 /**
  * @param args the command line arguments
  */
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);

  int n;
  System.out.print("input n = ");
  n = input.nextInt();

  double totalphi = 1.0;
  int sum;
  int minus;

  System.out.print("phi =4(1");

  for (int i = 2; i <= n; i++) {
   minus = 2 * i - 1;

   if (i % 2 == 1) {
    totalphi = totalphi + (1.0 / minus);
    System.out.print("+1/" + minus);
   }
   if (i % 2 == 0) {
    totalphi = totalphi - (1.0 / minus);
    System.out.print("-1/" + minus);
   }
  }
  sum = 2 * n + 1;
  if (n % 2 == 0) {
   System.out.print("+1/" + sum + ") = " + 4.0 * (totalphi + (1.0 / sum)));
  }
  if (n % 2 == 1) {
   System.out.print("-1/" + sum + ") = " + 4.0 * (totalphi - (1.0 / sum)));
  }
  System.out.println();

 }
}


Jumat, 09 November 2012

Soal UTS Algoritma & Pemrograman Looping (Java)



1.      Buatlah program untuk menerima input bilangan bulat positif n dan menampilkan n bilangan bulat positif pertama yang habis dibagi 3 tetapi tidak habis dibagi 2.
Contoh :
Input = 5
Output = 3 9 15 21 27

Jawab :
import java.util.Scanner;

/**
 * @author user
 */
public class s {

 /**
  * @param args the command line arguments
  */
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);
  int n;

  System.out.print("n = ");
  n = input.nextInt();

  for (int i = 1; i <= n; i++) {
   int x = (i * 6) - 3;
   System.out.print(x + " ");
  }
 }
}





2.      Buatlah program untuk membaca 7 data bilangan bulat psitif dari keyboard. Kemudian menghitung nilai terbesar kedua dari data tersebut dan menampilkan di layar monitor.
Contoh :     data input = 7, 12, 4, 23, 10, 5, 15
                  Data terbesar ke dua = 15

Jawab :
import java.util.Scanner;

import org.apache.log4j.Logger;

/**
 * @author user
 */
public class Exercises {

 /**
  * @param args the command line arguments
  */
 private static final Logger logger = Logger.getLogger(Exercises.class);

 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);

  int variable1;
  int variable2;
  int variable3;
  int variable4;
  int variable5;
  int variable6;
  int variable7;
  int x;

  System.out.print("variable1 = ");
  variable1 = input.nextInt();

  System.out.print("variable2 = ");
  variable2 = input.nextInt();

  System.out.print("variable3 = ");
  variable3 = input.nextInt();

  System.out.print("variable4 = ");
  variable4 = input.nextInt();

  System.out.print("variable5 = ");
  variable5 = input.nextInt();

  System.out.print("variable6 = ");
  variable6 = input.nextInt();

  System.out.print("variable7 = ");
  variable7 = input.nextInt();

  x = variable1;
  if (variable1 > variable2) {
   variable1 = variable2;
   variable2 = x;
  }

  x = variable2;
  if (variable2 > variable3) {
   variable2 = variable3;
   variable3 = x;
  }

  x = variable3;
  if (variable3 > variable4) {
   variable3 = variable4;
   variable4 = x;
  }

  x = variable4;
  if (variable4 > variable5) {
   variable4 = variable5;
   variable5 = x;
  }

  x = variable5;
  if (variable5 > variable6) {
   variable5 = variable6;
   variable6 = x;
  }

  x = variable6;
  if (variable6 > variable7) {
   variable6 = variable7;
   variable7 = x;
  }

  x = variable1;
  if (variable1 > variable2) {
   variable1 = variable2;
   variable2 = x;
  }

  x = variable2;
  if (variable2 > variable3) {
   variable2 = variable3;
   variable3 = x;
  }

  x = variable3;
  if (variable3 > variable4) {
   variable3 = variable4;
   variable4 = x;
  }

  x = variable4;
  if (variable4 > variable5) {
   variable4 = variable5;
   variable5 = x;
  }

  x = variable5;
  if (variable5 > variable6) {
   variable5 = variable6;
   variable6 = x;
  }

  x = variable1;
  if (variable1 > variable2) {
   variable1 = variable2;
   variable2 = x;
  }

  x = variable2;
  if (variable2 > variable3) {
   variable2 = variable3;
   variable3 = x;
  }

  x = variable3;
  if (variable3 > variable4) {
   variable3 = variable4;
   variable4 = x;
  }

  x = variable4;
  if (variable4 > variable5) {
   variable4 = variable5;
   variable5 = x;
  }

  x = variable1;
  if (variable1 > variable2) {
   variable1 = variable2;
   variable2 = x;
  }

  x = variable2;
  if (variable2 > variable3) {
   variable2 = variable3;
   variable3 = x;
  }

  x = variable3;
  if (variable3 > variable4) {
   variable3 = variable4;
   variable4 = x;
  }

  x = variable1;
  if (variable1 > variable2) {
   variable1 = variable2;
   variable2 = x;
  }

  x = variable2;
  if (variable2 > variable3) {
   variable2 = variable3;
   variable3 = x;
  }

  x = variable1;
  if (variable1 > variable2) {
   variable1 = variable2;
   variable2 = x;
  }

  System.out.println("The second large variable = " + variable6);

 }
}





3.    Buatlah program untuk menghitung n? = 1+2+3+……+n, nilai n diinputkan dari keyboard.
Contoh :     input n = 5
                  Output = 15

                  Input  = 10
                  Output = 55

Jawab :
import java.util.Scanner;

import org.apache.log4j.Logger;

/**
 * @author user
 */
public class Exercises {

 /**
  * @param args the command line arguments
  */
 private static final Logger logger = Logger.getLogger(Exercises.class);

 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);

  int value;

  System.out.print("value = ");
  value = input.nextInt();

  int j = 0;
  for (int i = 1; i <= value; i++) {
   j = j + i;
   System.out.print(i + " + " + " ");
  }

  System.out.println();
  System.out.println(j + " ");

 }
}
Selasa, 06 November 2012

Mie Instant, Makanan Pokok Anak Kost

Mau cerita nih soal makanan kebangsaannya anak kost dan hampir menjadi makanan pokok kalau lagi bokek. Harganya udah pasti murah, mudah ditemukan di warung-warung terdekat, di supermarket juga ada (lebih keren dikit). Bentuknya imut, kriting. Warnanya kuning, tapi sekarang juga ada yang berwarna hijau, mungkin besok entah tahun berapa bakalan ada revolusi jadi warna pink, merah atau apa lah. Udah bisa nebak kan?? Yupp... betul banget. Dia adalah Mie Instant.

Dari dulu sebelum aku ngkost emang udah suka sama yang namanya Mie Instant. Gimana ya, kalau udah lapernya ngga bisa ditahan kan emang pengen makan makanan yang cepet saji. Salah satunya ya mie instant itu. Kalau aku di rumah pas lagi masak mie pasti aku kasih variasi, biar ngga kelihatan polos gitu. Masa dibungkusnya ada gambar plus ayam, sayur, telor, tapi pas udah dimasak jadinya pucet polos gitu aja? kan ngga asik. Jadi kadang aku tambahin telor juga biar sama yg kayak di bungkusnya, kadang juga aku kasih brokoli, kubis, cabe, biar hot gitu. Tapi pas udah di kost-an, akhirnya masakanku kembali pucet polos. Ya maklum lah, di sini kan ngga ada apa apa. Mau beli kan musti ke pasar, ngga punya kendaraan pula. Ya udahlah, apa adanya. Yang penting bisa makan.

Umumnya sih anak kost yang jadiin mie instant sebagai makanan pokok kalau udah tanggal tua, alias dompet udah makin tipis. Kalau aku ngga, kapanpun aku pengen ya tinggal bikin aja. Kayak sekarang nih, pulang kuliah laper banget. Mau beli makanan di luar males, soalnya panas. Lagian aku masih punya nasi, kan sayang kalau misalnya udah masak nasi tapi ngga dimakan. Akhirnya ya masak mie dengan Magic Com yang sangat membantu aku buat memadamkan kelaparan dalam perutku. Cliiiiinnnngggggg.... Ini deh jadinya
Mie Sedap Goreng Kriiiuuukkkkk

Sebenarnya aku juga udah tau sih kalau sering konsumsi mie instant itu ngga baik buat kesehatan. Tapi ya mau gimana lagi?? Nafsuku untuk mengkonsumsi mie instant ngga bisa hilang. Apalagi anak kost kan juga dituntut untuk hemat. Kasihan orang tua kalau kita makan makanan mewah terus, bisa-bisa mereka jual rumah, tanah, sama sawah lagi buat biayain hidup kita. Alasanku yang lain adalah bukan karena aku ngga bisa masak. Gini-gini aku juga bisa masak loh. Masak air misalnya. Ngga, bercanda. Aku bisa masak sayur bening, sup, tumis, sambel goreng tempe, dan lain-lain yang ngga aku bisa. Jadi alasanku kenapa aku lebih sering masak mie, karena alat yang buat masak tu ngga ada. Ya ada sih, tapi dipake sama mbak kost lama. Aku malu mau ikutan masak. Sebenernya itu merugikan banget ya buat aku. Harusnya aku coba untuk mengakrabkan diri sama mereka biar bisa ikutan masak. Tapi ngga ah, aku malu.

Dari tadi aku curhat mulu. Ini nih aku kasih info bahaya sering-sering makan mie instant yang aku dapat dari internet.

Bahaya Makan Mie Instan
Beberapa penyakit berikut ditengarai akibat terlalu banyak makan mie instan.

• Penyebab kanker
Mie instan yang beredar saat ini, ternyata cukup membahayakan. Telah diketahui bahwa permukaan mie instan dilapisi oleh lilin. Inilah kenapa mie tidak pernah lengket satu sama lain.
Lilin ini sangat membahayakan kesehatan tubuh, karena tubuh kita butuh waktu lama untuk mencerna lilin ini, yakni sekitar dua hari.

Jika zat ini terus menumpuk dalam tubuh, kemungkinan kita untuk terkena penyakit kanker sangatlah tinggi. Misalnya, kanker hati, usus, atau leukimia. Tak hanya lilin dari mie instan. Bumbunya pun yang mengandung banyak zat aditif seperti MSG yang bisa menjadi pemicu kanker dalam tubuh.
Banyak kasus nyata tentang orang yang sakit dan diduga disebabkan karena terlalu banyak mengkonsumsi mie instan. Karena itu, sebaiknya Anda pun mulai mengurangi mengkonsumsi makanan ini

• Chinese restaurant syndrome
Bahaya makan mie instan yang satu ini lebih mirip keracunan. Hal ini disebabkan oleh MSG yang terdapat pada bumbu mie instan.
Ada beberapa orang yang tidak tahan dengan MSG, lalu kemudian merasa pusing dan sesak nafas. Namun penyakit ini tidak terlalu fatal, karena akan sembuh setelah 2-3 jam kemudian.

• Kerusakan jaringan otak
Mengkonsumsi mie instan terus-menerus sama dengan menumpuk zat-zat kimia berbahaya dalam tubuh dan efeknya bisa merusakkan sel-sel jaringan otak. Akibatnya, akan terjadi penurunan transmisi sinyal dalam otak.
Selain itu, kerusakan jaringan sel otak ini juga akan memicu penyakit-penyakit lain seperti stroke atau keumpuhan.

Hiiiiii... Ngeri juga ya. Mungkin setelah temen-temen baca ini langsung ngga mau lagi makan mie instant. Kalau aku sih tetep lanjut sema persediaanku belum habis. Sayang kan kalau dibiyarin gitu aja sampai kadaluarsa. Lagian aku juga ngga tega, soalnya mie instantnya ini habis dikirimi orang tuaku. Mungkin kalau udah habis, aku bakalan ngurangin kebiasaanku makan mie instant.

sumber : http://forum.kompas.com/food/163871-bahaya-makan-mie-instan.html