Minggu, 06 April 2014

Hitunglah a x b dengan metode penjumlahan

Kasus 4.8

Kasus :
Hitunglah a x b dengan metode penjumlahan

Analisis :
Input : misal a dan b
Proses : axb = a + a +a +...+a (sebanyak b kali), ini berlaku jika a positif maupun negatif lalu bagaimana kalau b yang negatif? karena loop "tidak pernak negatif" maka harus dimanipulasi agar selalu positif dengan cara b menjadi abs(b) dan khusus untuk b < 0 hasil yang sudah diperoleh dinegatifkan
Output : jumlah


1. Program C++ :

 #include <iostream>
#include <string>

using namespace std;
int main()
{
   int i, jumlah, b, a;

   i =1;
   jumlah =0;
 
   cout << "Masukkan nilai a = ";
   cin >> a;
   cout << "Masukkan nilai b = ";
   cin >> b;
  
   while (!(i>abs(b)))
   {
      jumlah =jumlah+a;
      i =i+1;
   }
   if (b<0)
   {
      jumlah =-jumlah;
   }
   cout << a << " x " << b << " = " << jumlah << endl;
  
   system("PAUSE");
   return 0;
}


2. Flowchartnya :


Hitunglah nilai dari x^y dengan x bilangan real dan y bilangan bulat.

Kasus 4.7

Kasus :
Hitunglah nilai dari x^y dengan x bilangan real dan y bilangan bulat.

Analisis :
Input : misal x dan y
Proses : x^y = x.x.x.x.x...x (sebanyak y kali)
Output : hasil x pangkat y

1. Program C++ :
#include <iostream>
#include <string>

using namespace std;
int main()
{
   int i ,y;
   float x, pangkat;

   i =1;
   pangkat =1;
  
   cout << "Masukkan x bilangan real = ";
   cin >> x;
   cout << "Masukkan y bilangan bulat = ";
   cin >> y;
   while (!(i>y))
   {
      pangkat =pangkat*x;
      i =i+1;
   }
   cout << x << " pangkat " << y << " = " << pangkat << endl;
  
   system("PAUSE");
   return 0;



2. Flowchartnya :


Hitunglah rata-rata dari integer positif

Kasus 4.4

Kasus :
Hitunglah rata-rata dari integer positif (banyak data ditentukan dari data yang dimasukkan).

Analisis :
Input : misal x= data yang dimasukkan
Proses : akan melakukan perulangan terus menerus sampai data yang dimasukkan <0
              rumus rata-rata = jumlah/(n-1).
Output : rata-rata


1. Program C++ :


#include <iostream>
#include <string>

using namespace std;
int main()
{
   int n;
   float jumlah, rerata, x;

   n =1;
   jumlah =0;
  
   cout << "Masukkan data ke-1 = ";
   cin >> x;
   while (!(x<0))
   {
      jumlah =jumlah+x;
      cout << "Masukkan data ke-"<< (n+1) <<" = ";
      cin >> x;
      n =n+1;
      rerata =jumlah/(n-1);
      cout << "Rata-ratanya adalah = " << rerata << endl;   }

   system("PAUSE");
   return 0;
}

2. Flowchartnya :


rata-rata dari n bilangan bulat positif.

Kasus 4.3

Kasus :
Carilah rata-rata dari n bilangan bulat positif.

Analisis :
Input : misal n = banyaknya nilai yang akan dimasukkan, dan variable nilai= untuk menampung
           nilai yang dimasukkan.
Proses : melakukan perulangan sampai a > n, kemudian semua nilai yang sudah dimasukkan     
             dijumlah dan dibagi dengan n maka dapat rata-ratanya.
Output : rata-rata.


1. Program C++ :

#include <iostream>
#include <string>

using namespace std;
int main()
{
   int n, a;
   float jumlah, nilai, rerata;
  
   a = 1;
   jumlah = 0;
  
   cout << "Masukkan banyaknya nilai = ";
   cin >> n;
   while (!(a>n))
   {
      cout << "Masukkan nilai ke-" << a <<" = ";
      cin >> nilai;
      jumlah =jumlah+nilai;
      a =a+1;
   }
   rerata =jumlah/n;
   cout << "Rata-ratanya adalah = " << rerata << endl;
  
   system("PAUSE");
   return 0;


2. Flowchartnya :

Mencetak Bilangan Ganjil dari 0 Sampai 10

Kasus 4.2

Kasus :
Cetaklah bilangan ganjil dari 0 sampai 10

Analisis :
Input : misal a = 1
Proses : melakukan perulangan jika a<10, membedakan ganjil atau genap menggunakan % (modulo) rumus = a%2=1 berarti bilangan tersebut ganjil.
Output : output bilangan ganjil dari 0 sampai 10

1. Program C++ :

#include <iostream>
#include <string>

using namespace std;
int main()
{
   int a;

   a =1;
   while (!(a>10))
   {
      if (a % 2==1)
      {
      cout << a << endl;     
      }        
      a =a+1;
   }
  
   system("PAUSE");
   return 0;


2. Flowchartnya :



Mencetak Bilangan 1 Sampai 4.

kasus 4.1

Kasus :
Cetaklah bilangan 1 sampai 4.

Analisis :
Input : misal a =1
Proses : melakukan perulangan sampai a > 4
Output : mencetak a, yaitu angka 1 sampai 4

1.    Program C++ nya :

#include <iostream>
#include <string>

using namespace std;
int main()
{
   int a =1;

   while (!(a>4))
   {
      cout << a << endl;     
      a =a+1;
   }
   system("PAUSE");
   return 0;


2. Flowchartnya :


Raptor Menentukan Nilai Naik dan Turun

Menentukan Nilai Naik 1-9 :









Menentukan Nilai Turun 9-1 :

 
Menentukan Nilai Rekursif Naik 1-9 :

 



































Menentukan Nilai Rekursif Turun 9-1 : 




































Refleksi Minggu Ke-5

Berikut adalah isi dari Refleksi mata kuliah Algoritma pemrograman kelas A 

MINGGU ke-5

1. Yang saya peroleh minggu ini :
  • Mempelajari tentang fungsi yang mengembalikan 1 nilai
  • Fungsi yang mengubah nilai parameter
  • Overloading Function
2. Yang tidak dipahami minggu ini :
  •  kurang mengerti tentang Overloading function
3. Waktu untuk belajar Algoritma Pemrograman :

Dalam minggu ini saya belajar tentang Algoritma Pemrograman :
  • Jam membaca materi
  • 2 jam bermain sokoban
  • 20 jam mengerjakan tugas individu dan diskusi kelompok.

4. Jenis Komputer :
  • Jenis komputer yang saya miliki adalah Jenis Laptop
5. Sudah Level berapa anda bermain Sokoban :
  •  level 15
6. Apakah sudah mengcopy materi :
  • Sudah
7. Sudah berapa reptor yang anda buat :
  • Beberapa Raptor

REFLEKSI pada minggu ke-6

REFLEKSI pada minggu ke-6

Kami kelas A melaksanakan  kuliah online untuk pertama kalinya. Kuliah online di mulai jam 7 pagi. 

Materi yang dipahami  adalah bagaimana cara menambahkan sub menu pada flowchart. dan mempelajari raptor rekursi dan interaktif.

Yang kurang dipahami : cara membedakan raptor rekursif dan interaktif.

Tindak lanjut : bertanya kepada teman 1 kelompok namun masi belum dapat di mengerti

Sabtu, 05 April 2014

Perulangan For dan While

menentukan bilangan terkecil ke terbesar


#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
      int i;
 for(i=0;i<10;i++)//menentukan bilangan terkecil ke terbesar
cout<<"Maka Nilai yang tercetak adalah =  "<<i<<"\n";

    system("PAUSE");
    return EXIT_SUCCESS;
}


 menentukan bilangan terbesar ke terkecil

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
      int i;
 for(i=9;i>=0;i--)//menentukan bilangan terbesar ke terkecil
cout<<"Maka Nilai yang tercetak adalah =  "<<i<<"\n";

    system("PAUSE");
    return EXIT_SUCCESS;
}


 menentukan bilangan terkecil ke terbesar

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
      int i;
 i=0;
 while(i<10)
 {cout<<i<<endl;
 i++;}

    system("PAUSE");
    return EXIT_SUCCESS;
}

 menentukan bilangan terbesar ke terkecil

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
      int i;
 i=9;
 while(i>=0)
 {cout<<i<<endl;
 i--;}

    system("PAUSE");
    return EXIT_SUCCESS;
}