ASSALAMUALAIKUM WR WB

Salam redaksiana!!!

Masih bersama saya Bagus Saputra dari Elka 19, memecahkan masalah dengan program C. Masih semangat belajar kan yaa.. kali ini saya akan membahas tentang “VARIABEL & FUNGSI STRING” yang tentunya banyak model pengaplikasiannya dalam kehidupan sehari- hari kita. Sebelumnya apa sih variable & fungsi string itu? Mari kita bahas skuyy..

Suatu karakter string adalah terdiri dari beberapa karakter (deretan 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 digunakkan didalam fungsi maka nilainya tidak akan berubah selama program aktif.

Nahh.. setelah mengetahui teorinya maka selanjutnya kita langsung saja pada praktiknya dengan peintah dan penyelesaiannya berikut ini skuyy..

1. Membuat fungsi yang disebut strsisip () untuk menyisipkan satu karakter string kedalam string lainnya. Argumen untuk fungsi harus berisi string sumber, string yang disisipkan, dan posisi dari string sumber dimana string disisipkan.

masukkan kode programnya:

#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 huruf berapa??”);
scanf(“%d”,&a);

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

getch();}

Maka hasil yang muncul:

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Pada hasil yang keluar ketik kalimat “random” maka akan ada perintah penyisipan kata atau karakter. letak penyisipannya ditaruh berdasarkan hitungan setiap karakter yang mau disisipi dan nantinya akan muncul pada hasil akhir yaitu kalimat yang utuh sesudah penyisipan.

2. Membuat program untuk menentukan suatu kata/kalimat yang merupakan suatu polindrom atau bukan. Dimana kata / kalimat tersebut dimasukkan melalui keyboard.

masukkan kode programnya:

#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);
}

Maka hasil yang muncul:

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Fungsinya pengujian apakah kalimat yang kita masukkan adalah kalimat polindrom atau tidak.

contoh yang bukan kalimat polindrom : Makan sate

3. Membuat program untuk menghitung jumlah huruf kecil. huruf besar, angka numerik, dan tanda baca didalam suatu string yang dimasukkan melalui keyboard.

masukkan kode program :

#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();}

Maka hasil yang muncul :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Fungsinya untuk mengetahui jumlah karakter yang terdapat dalam kalimat.

4. Membuat program untukmenghasilkan kalimat bersusun.

masukkan kode program :

#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);
}

Maka hasil yang muncul :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Fungsinya untuk membuat kalimat bersusun.