a. LISTING PROGRAM
#include <stdio.h>
main()
{
char teks[31];
b. OUTPUT
2. a. Definisikanlah sebuah fungsi untuk menghitung panjang dari string yang
menjadi parameternya (misalnya : pjgstr())
b. Pada fungsi main() terimalah input string yang akan dihitung panjang
karakternya. Selanjutnya panggil fungsi pjgstr() untuk mendapatkan
panjang string dan tampilkan hasilnya di main()
a. LISTING PROGRAM
#include <stdio.h>
int pjgstr(char[]), jumKarakter;
main()
{
char teks[255];
b. OUTPUT
c. ALGORITMA
1. Pertama dideklarasikan fungsi yang akan kita gunakan yaitu pjgstr dengan parameter
integer untuk menghitung berapa banyak karakter pada string yang kita inputkan
2. Lalu deklarasikan array yang akan kita gunakan sebagai string diluar main () lalu
deklarasikan pada main() lalu deklarasikan pada main() 2 variable dimana variable 1
sebagai penampung dari return fungsi lalu 1 variabel sebagai parameter fungsi pjgstr()
3. Lalu pada main() gets variable array lalu assign jumKarakter=pjgstr(parameter). Lalu
printf Panjang karakter
4. Pada fungsi pjgstr() deklarasikan I bernilai 1
5. Pada perulangan parameter akan di ++ kemudian akan di return
Kesimpulan:
Dapat memahami cara menghitung banyak karakter yang kita inputkan di dalam variable array
b. OUTPUT
c. ALGORITMA
1. Pertama deklarasikan fungsi yang akan kita gunakan yaitu pjgstr dengan parameter
integer untuk menghitung banyak karakter pada string yang kita inputkan dan fungsi
balikstr dengan parameter integer yang berisi return dari pjgstr
2. Lalu deklarasikan array yang akan kita gunakan sebagai string diluar main() lalu
deklarasikan pada main() 2 variabel dimana 1 variabel sebagai penampung dari return
fungsi lalu 1 variabel sebagai parameter fungsi pjgstr().
3. Lalu pada main() fgets variabel array lalu assign var_penampung=pjgstr(parameter). Lalu
printf var_penampung.
4. Pada fungsi pjgstr() deklarasikan I bernilai 1
5. Pada perulangan parameter akan di ++ kemudian akan di return
6. Lalu pada fungsi balikstr(return pjgstr) , deklarasikan variabel I sebagai variabel control
perulangan lalu gunakan for dengan I bernilai return dari pjgstr lalu kondisi I lebih besar
sama dengan 0 lalu I didekremen. Lalu pada perulangan tersebut printf array[i].
Kesimpulan:
Mengetahui cara membuat program terkait membalikkan suatu string inputan dari user
menggunakan perulangan for
#include <stdio.h>
int pjgstr(char[]);
void copystr(char[],char[]);
main()
{
char teks1[255],teks2[255];
char jumKarakter=0;
copystr(teks1,teks2);
b. OUTPUT
c. ALGORITMA
1. Pertama deklarasikan suatu fungsi yaitu copystr bertipe char dan paramaternya juga char
karena fungsi tersebut menggunakan parameter yang dimana nantinya parameter tersebut
berfungsi sebagai array penampung yang akan di return pada main().
2. Lalu deklarasikan 2 variabel array bertipe char untuk menampung inputan kita dan
menjadi parameter di fungsi copystr.
3. Kemudian pada fungsi copystr deklarasikan 1 variabel yaitu a sebagai variabel control
perulangan.
4. Lalu gunakan perulangan for dengan a bernilai 0 lalu kondisinya berupa inputan[a]!=’\0’
karena null merupakan array terakhir kemudian a di inkremen. Kemudian pada
perulangan assign var_penampung[a]=inputan[a] lalu var_penampung[a] di return.
Kesimpulan:
Mengetahui cara membuat program terkait mengcopy string yang kita buat menggunakan
inputan pada main()
PRAKTIKUM 22
String 2
A. PERCOBAAN
1. Ulangilah soal nomor 2, 3 & 4 pada modul prakt String 1 dengan
menggunakan fungsi-fungsi standard (built-in functions)
a. LISTING PROGRAM
#include <stdio.h>
#include <string.h>
main()
{
char teks1[255],teks2[255],hslBalik[255];
printf("Masukkan kalimat\t=");
gets(teks1);
printf("\nPanjang kalimat \t= %d karakter",strlen(teks1));
printf("\nHasil Pembalikan \t= %s\n",strrev(teks1));
strcpy(teks2,teks1);
printf("\nHasil Pencopyan \t=%s",teks2);
}
int pjgstr(char sesuatu[])
{
int i = 0;
while(sesuatu[i])
i++;
return i;
}
b. OUTPUT
c. ALGORITMA
1. Pertama pakai #include kemudian deklarasikan 2 variabel array yang bertipe char
sebagai array asal dan tujuan.
2. Kemudian pada main input array asal kemudian cetak banyak karakter menggunakan
strlen(var_asal) kemudian strcpy(var_tujuan,var_asal) agar var_tujuan bernilai var_asal,
kemudian cetak var_tujuan. Lalu untuk membalik menggunakan strrev(var_asal).
Kesimpulan:
Mengetahui cara menggunakan strlen dan strcev yang masing masing memiliki fungsi yg
berbeda
hslBanding = bandingstr1(teks1,teks2);
if(hslBanding == 0)
printf("\nKalimat yang anda masukkan diatas SAMA\n");
else
printf("\nKalimat yang anda masukkan diatas TIDAK SAMA\n");
}
int bandingstr1(char kal1[], char kal2[])
{
int i,sama = 0;
for(i=0;i<strlen(kal1) || i<strlen(kal2);i++)
{
if(kal1[i] > kal2[i])
{
sama = 1;
break;
}
else if(kal1[i] > kal2[i])
{
sama = -1;
break;
}
i++;
}
return sama;
}
b. OUTPUT
c. ALGORITMA
1. Pertama deklarasikan fungsi yang akan kita gunakan yaitu bandingstr dengan parameter
2 array bertipe char yang nantinya parameter tersebut dideklarasikan di luar main().
2. Pada main() deklarasikan 1 variabel sebagai penampung return dari fungsi bandingstr()
berupa integer. Kemudian pada main() input kedua array tersebut dengan karakter. Ketika
variabel penampung bernilai 0 maka string bernilai sama jika bernilai selain 0 string
bernilai tidak sama.
3. Pada fungsi bandingstr dengan parameter 2 array bertipe char deklarasikan 2 variabel
dimana 1 variabel berfungsi sebagai variabel control dan 1 variabel sebagai penampung
nilai dengan nilai awalan 0 yang nantinya akan direturn di akhir fungsi. Lalu gunakan
perulangan for dimana variabel control bernilai 0 dengan kondisi var control kurang dari
strlen array1 atau strlen array 2 kemudian I nya di inkremen. Kemudian pada perulangan
tersebut kondisikan dimana array1[i]array2[i] maka variabel penampung nilai ditambah
1. Kemudian pada luar perulangan return variabel penampung nilai.
Kesimpulan:
Mengetahui cara membuat program terkait membandingkan string dengan case sensitive yaitu
memperhatikan huruf capital
hslBanding = bandingstr2(teks1,teks2);
if(hslBanding == 0)
printf("\nKalimat yang anda masukkan diatas SAMA\n");
else
printf("\nKalimat yang anda masukkan diatas TIDAK SAMA\n");
}
int bandingstr2(char kal1[], char kal2[])
{
int i,sama = 0;
for(i=0;i<strlen(kal1) || i<strlen(kal2);i++)
{
if(kal1[i] > kal2[i])
{
if(kal1[i] !=kal2[i]+32)
{
sama = 1;
break;
}
}
else if(kal1[i] > kal2[i])
{
if(kal1[i] !=kal2[i]-32)
{
sama = -1;
break;
}
}
}
return sama;
}
b. OUTPUT
c. ALGORITMA
1. Pertama deklarasikan fungsi yang akan kita gunakan yaitu bandingstr dengan parameter 2
array bertipe char yang nantinya parameter tersebut dideklarasikan di luar main().
2. Pada main() deklarasikan 1 variabel sebagai penampung return dari fungsi bandingstr()
berupa integer. Kemudian pada main() input kedua array tersebut dengan karakter. Ketika
variabel penampung bernilai 0 maka string bernilai sama jika bernilai selain 0 string
bernilai tidak sama
Kesimpulan: mengetahui cara membuat program terkait membandingkan 2 nilai string dimana
perbandingan tersebut menggunakan non case sensitive yaitu tidak memperhatikan huruf capital
hasilC = strcmp(teks1,teks2);
hasilCi = strcmpi(teks1,teks2);
if(hasilC == 0)
printf("\nPerbandingan menggunakan strcmp() menyatakan cocok\n");
else
printf("\nPerbandingan menggunakan strcmp() menyatakan tidak cocok\n");
if(hasilCi == 0)
printf("\nPerbandingan menggunakan strcmp() menyatakan cocok\n");
else
printf("\nPerbandingan menggunakan strcmp() menyatakan tidak cocok\n");
}
b. OUTPUT
c. ALGORITMA