Jumat, 22 Januari 2016

Pseudocode untuk menyatakan bilangan ganjil dan genap

*/buatlah sebuah pseudocode tentang komputer yang menerima inputan sebanyak n, cek apakah bilangan itu ganjil atau genap , lalu hitung jumlah ganjil dan genapdan hitung
total bilangan genap dan ganjil/*

Start
input n
x = 0
angka_ganjil = 0
angka_genap = 0
total_ganjil = 0
total_genap = 0
DOWHILE n>x
input angka
IF angka mod 2 = 1 THEN
angka_ganjil = angka_ganjil + angka
total_ganjil = total_ganjil + 1
ELSE
angka_genap = angka_genap + angka
total_genap = total_genap + 1
ENDIF
x = x + 1
ENDDO
print "Jumlah bilangan ganjil =" ,total_ganjil
print "Jumlah bilangan genap =", total_genap
print "Total bilangan ganjil =", angka_ganjil
print "Total bilangan genap =", angka_genap
END

Pseudocode Membalikan Kata

Start
input kata
a = 0
x = leghtofstring (kata) - 1
DOWHILE x > a
temp[x] = kata[a]
x = x + 1
ENDDO
print temp
END

Pseudocode Bilangan Fibonaci

/* buatlah sebuah pseudocode tentang program yang menerima inputan angka dimana angka ini akan menunjukan banyaknya bilangan fibonacci yang keluar akan tetapi
output yang diminta adalah sebuah bintang/*

Start
input n
x = 1
a = 0
y = 0
DOWHILE a < n
z = x + y
b = 0
DOWHILE z>b
print *
b = b + 1
ENDDO
print " "
x = y
y = z
a = a + 1
ENDDO
END

Pseudocode Menghitung selisih durasi

*/buatlah sebuah pseudocode tentang program dimana program tersebut menerima 2 inputan 6/5 digit nomor(jika kurang dari 5 error) yang mana 6/5 digit ini akan di
convert menjadi jam, menit, detik dan dicari selisihnya , jika jam lebih dari 23 dan menit lebih dari 59 dan detik lebih dari 59 maka error dan jam ke 2 harus lebih
kecil daripada jam1/*

Start
input jam1
input jam2
IF lenghtofstring(jam1) < 5 or leghtofstring (jam2) < 5 THEN
print "Error"
ELSE
IF leghtofstring(jam1) = 5 THEN
waktu1 = "0" + jam1
ELSE
IF lenghtofstring (jam1) = 6 THEN
waktu1 = jam1
ELSE
print "Error"
ENDIF
ENDIF
IF lenghtofstring(jam2) = 5 THEN
waktu2 = "0" + jam2
ELSE
IF lenghtofstring (jam2) = 6 THEN
waktu2 = jam2
ELSE
print "Error"
ENDIF
ENDIF
IF waktu1[1] * 10 + waktu1[2] > 23 OR waktu1[3]*10 + waktu1[4] > 59 OR waktu1 [5]*10 + waktu1[6] >59 THEN
print "Error"
ELSE
IF waktu2[1] * 10 + waktu2[2] > 23 OR waktu2[3]*10 + waktu2[4] > 59 OR waktu2 [5]*10 + waktu2[6] >59 THEN
print "Error"
ELSE
pukul1 = (waktu1[1] * 10 + waktu1[2]*3600) + (waktu1[3]*10 + waktu1[4])*60 + waktu1 [5]*10 + waktu1[6]
pukul2 = (waktu2[1] * 10 + waktu2[2]*3600) + (waktu2[3]*10 + waktu2[4])*60 + waktu2 [5]*10 + waktu2[6]
IF pukul2 > pukul1 THEN
print "Error"
ELSE
a1 = pukul1 div 3600
b1 = pukul1 - (3600*a1) div 60
c1 = pukul1 - (3600*a1) mod 60
a2 = pukul1 div 3600
b2 = pukul1 - (3600*a1) div 60
c2 = pukul1 - (3600*a1) mod 60
print "JAM 1 =" ,a1, "MENIT 1 =",b1, "DETIK 1 =",c1, newline
print "JAM 2 =" ,a2, "MENIT 2 =",b2, "DETIK 2 =",c2, newline
selisih = pukul1 - pukul1
print "SELISIH =" ,selisih, newline
a3 = pukul1 div 3600
b3 = pukul1 - (3600*a1) div 60
c3 = pukul1 - (3600*a1) mod 60
print "SELISIH JAM =" ,a3, "SELISIH MENIT =",b3, "SELISIH DETIK  =",c3
ENDIF
ENDIF
ENDIF
END





CPP Palindrom

#include <stdio.h>
#include <string.h>

int main()
{
    char inputKata[100];
    char tempKata[100];

    gets(inputKata);

    int x = strlen(inputKata)-1;
    for (int i = 0; i < strlen(inputKata); i++)
    {
        tempKata[x] = inputKata[i];
        x = x - 1;
    }

    tempKata[strlen(inputKata)] = '\0'; //abaikan di pseudo

    if (strcmp(inputKata, tempKata) == 0) //IF KATA = KATAKEBALIK THEN
    {
        printf("%s palindrom", inputKata);
    }
    else
    {
        printf("%s", inputKata);
    }

    getchar();
    return 0;
}

CPP Code Memajukan Kata

CPP Code untuk memajukan huruf sebanyak 13 huruf !

#include <stdio.h>
#include <string.h>

int main()
{
    //A = 65 , Z = 90 (huruf gede)
    //a = 97 , z = 122 (huruf kecil)
    char inputKata[100];

    gets(inputKata);

    printf("Kata sebelum di majuin : %s\n", inputKata);

    for(int i = 0; i < strlen(inputKata); i++)
    {
        for(int j = 0; j < 13; j++)
        {
            inputKata[i] = inputKata[i] + 1;
            if(inputKata[i] == 91)
            {
                inputKata[i] = 65;
            }
        }
    }

    printf("Kata sesudah di majuin : %s", inputKata);
    getchar();
    return 0;
}

Rabu, 13 Januari 2016

Inventory and Warehouse Management

Inventory (Good movement) is concerd with the storage and movemet of material within an organization.
4 Movement types :
1.       Good receipt : From vendor or production process
2.       Good Issue : To sales order or internal consumption
3.       Stock transfer : physical movement of material (Sloc to Sloc in same plant , Sloc to Sloc to another plant)
4.       Transfer posting : result in a change in material status (In quality inspection , blocked , unrestricted use , in transit) (there are 3 options : one-step procedure , two-step procedure, stock transfer order)
Key organization from inventory is Sloc.
Most relavan master data :
1.       Material master
2.       Plant/ data storage material master view
3 Types of Stock transfer order :
1.       STO without delivery
2.       STO with delivery (fulfillment)
3.       STO with delivery and billing
Warehouse is associated with one or multiple combination of plant and sloc.
Warehouse types :
1.       Storage type (characteristic, material)
2.       Storage section /picking area
3.       Storage bin
A storage section groups bins with similar characteristic :
1.       Fast moving
2.       Slow moving
3.       Heavy
4.       Light
5.       Small

Warehouse management triggered by : fulfillment, procurement,production, inventory management