Assalamu’alaikum Warahmatullahi Wabarakatuh.

Haii sobat hidup !! Salam hidup !!

Oke sobat hidup, pada kesempatan kali ini, kita akan membahas materi selanjutnya setelah materi VARIABEL ARRAY. Uwaww materi apakah ituuu??

Yakk benar sekali, kita akan membahas materi tentang VARIABEL DAN FUNGSI STRING. Tapi tunggu duluu.. seperti biasa, sebelum masuk ke dalam pembahasan teori, ada tujuan yang ingin kita capai dalam belajar mengenai materi ini, sobat hidup. Apasih tujuannya?

TUJUAN dari percobaan kali ini ialah Mempelajari penggunaan variabel string yang dipadukan dengan fungsi-fungsi untuk pengolahan data string, seperti strcat(), strlen(), strcpy() dan sebagainya.

Nah setelah mengetahui tujuan dari percobaan kali ini, baru deh kita masuk ke dalam pembahasan teori VARIABEL DAN FUNGSI STRING.

Suatu karakter STRING adalah terdiri dari beberapa karakter yang diakhiri dengan karakter khusus ‘\0’ (null). Suatu konstanta string adalah karakter string yang dituliskan diantara tanda petik ganda (“), seperti yang  digunakan pada fungsi printf() atau puts(). Konstanta karakter string mempunyai kelas penyimpan static, sehingga bila digunakan dalam fungsi, maka nilainya tidak akan berubah selama program masih aktif.

Nahh sobat hidup, berakhir sudah pembahasan teori dari VARIABEL ARRAY itu, sekarang agar lebih jelas dan lebih paham, kita langsung saja melakukan percobaannya. Let’s go…

  1. Membuat fungsi untuk menyisipkan satu karakter string kedalam string lainnya.

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

char str1[100],teks[100],hasil[100];
//fungsi sisipan//
char sisip(char teks[], char str1[], int a)
{
strncpy(hasil,teks,a);
strncat(hasil+a,str1,strlen(str1)-1);
strcat(hasil+a+strlen(str1)-1,teks+a);
}

main()
{
int a;

puts(“Masukan sebuah tulisan”);
fgets(teks, sizeof teks, stdin);

puts(“Tambahkan karakter yang akan disisipi”);
fgets(str1,sizeof str1, stdin);

puts(“Disisipi di karakter ke berapa??”);
scanf(“%d”,&a);

sisip(teks,str1,a);
puts(hasil);

}

Setelah sobat hidup membuat program di atas, klik Build and Run, maka akan muncul tampilan seperti gambar di bawah :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Setelah muncul tampilan seperti di atas, sobat hidup silakan masukkan sebuah tulisan yang sobat hidup ingin sisip i dengan karakter lain, misalnya :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Nah setelah sobat hidup memasukkan sebuah tulisan, masukkan lah sisipan yang sobat hidup ingin sisipkan. Kemudian klik ENTER, maka akan muncul tampilan seperti gambar di bawah :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Kemudian masukkan angka yang menunjukkan urutan karakter yang sobat hidup ingin letakkan. Kemudian klik ENTER

  • Facebook
  • Twitter
  • Google+
  • Pinterest

 2. Membuat program untuk menentukan kalimat polindrom atau bukan.

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

char klmt1[100],klmt2[100];

main()
{
puts(“Masukan kalimat “); fgets(klmt1,sizeof klmt1,stdin);
spasi(klmt1);

strcpy(klmt2,klmt1);
strrev(klmt2);

if(strcmp(klmt1,klmt2)==0)
puts(“Kalimat POLINDROM”);
else
puts(“bukan Kalimat POLINDROM”);

getchar();
}
spasi(char klmt1[])
{
int b = strlen(klmt1) -1;
if (klmt1[b] == ‘\n’)
{klmt1[b] = ‘\0’;}

return(klmt1);
}

Klik Build and Run, maka akan muncul tampilan seperti berikut :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Kemudian masukkan kalimat yang sobat hidup ingin tentukan apakah itu polindrom atau bukan, misalnya :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Kemudian sobat hidup masukkan lagi kalimat lain yang sobat hidup inginkan, misalnya :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Secara otomatis program akan memberitahukan kepada sobat hidup bahwa kalimat yang sobat hidup masukkan adalah polindrom atau bukan.

3. Membuat program untuk menentukan jumlah huruf besar, huruf kecil, angka numerik dan tanda baca.

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

int kcl,bsr,angka,tdbc,hitung;
int cek(char klmt[])
{
kcl=bsr=angka=tdbc=hitung=0;
for(hitung;klmt[hitung];hitung++)
{
if(klmt[hitung]>=’a’&&klmt[hitung]<=’z’)
kcl++;
else if (klmt[hitung]>=’A’&&klmt[hitung]<=’Z’)
bsr++;
else if (klmt[hitung]>=’0’&&klmt[hitung]<=’9′)
angka++;
else tdbc++;
}
}
char spasi(char a[])
{
int b = strlen(a) -1;
if (a[b] == ‘\n’)
{a[b] = ‘\0’;}

return(a);
}
main()
{
char klmt[100];
puts(“Penyortiran huruf\nMasukan kalimat”);
fgets(klmt,sizeof klmt,stdin);

spasi(klmt);
cek(klmt);

printf(“Huruf besar = %d\nHuruf kecil = %d\nangka= %d\ntanda baca= %d”,bsr,kcl,angka,tdbc);

getchar();

}

Kemudian klik Build and Run, maka akan muncul tampilan seperti gambar di bawah :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Masukkan sebuah kalimat yang sobat hidup inginkan, maka secara otomatis program tersebut akan menampilkan jumlah huruf kecil, huruf besar, angka numerik dan tanda bacanya, misalnya :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

  4. Membuat program yang menampilkan kata kata membentuk tangga

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

char klmt[200];

main()
{
int a,b,x,y=1 ;

printf(“Masukan kalimat \n”);
fgets(klmt,sizeof klmt, stdin);

spasi(klmt);

for(b=0;b<=strlen(klmt);b++){
x=strlen(klmt)-a;y++;
for(a=0;a<b;a++){
gotoxy(x,y);
printf(“%c”,klmt[a]);
x++;
}
}
getchar();
}
spasi(char klmt[])
{
int z = strlen(klmt) -1;
if (klmt[z] == ‘\n’){
klmt[z] = ‘\0’;
}

return(klmt);
}
void gotoxy(int x, int y)
{
COORD coord;
coord.X = x;
coord.Y = y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
}

Kemudian klik Build and Run, maka akan muncul tampilan seperti gambar di bawah :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Kemudian masukkan kalimat yang sobat hidup inginkan. Lalu klik ENTER, maka akan muncul hasil seperti berikut :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Wahaiii sobat hidup, selesai sudah pembahasan kita mengenai VARIABEL DAN FUNGSI STRING ini, kiranya pembahasan kali ini cukup sampai disini dulu sobat hidup. Sampai ketemu lagi di pembahasan selanjutnya… baaaaayyyy..

SALAM HIDUP!!!

Wassalamu’alaikum Wr.Wb