Help Me Please tentang membuat program dari BORLAND C++

Forum diskusi pemrograman Visual C++ .NET / CLI

Help Me Please tentang membuat program dari BORLAND C++

Postby bboy43 » 17 Mar 2011, 04:27

adik saya kelas 1 SMK jurusan RPL (Rekayasa Perangkat Lunak) nah dia minta Bantuan saya..
saya belum tau banyak tentang borland C++.
tugasnya membuat program sederhana yang ada aritmatika,sqrt,penambahan,relasi,logika and (&&).
andai ada yang bisa buatin programnya saya berterima kasih sekali.

kalo script ii kan buat perulangan judul.header
Code: Select all
#include<iostream.h>
#include<conio.h>
cetak42kali()
{
for(int c=0;c<41;c++)
cout<<"=";
cout<<endl;
}
main()
{
char namakasir[25],namapembeli,namabuku;
int jumbel,diskon,totalbayar,ubay,ukem,totalpmbayaran;


cout<<"\tToko Buku 'Rajin Membaca'"<<endl;
cout<<"       JL. Raya Maboni Jaya No.25"<<endl;
cout<<"\t  Telepon 085716146881"<<endl;
cetak42kali();
cout<<"Nama Kasir\t= ";cin>>namakasir;
cout<<"Nama Pembeli\t= ";cin>>namapembeli;
cout<<"Nama Buku\t= ";cin>>namabuku;
cout<<"Jumlah Beli\t= ";cin>>jumbel;
clrscr();

cout<<"\tToko Buku 'Rajin Membaca'"<<endl;
cout<<"       JL. Raya Maboni Jaya No.25"<<endl;
cout<<"\t  Telepon 085716146881"<<endl;
cetak42kali();
getch();
}


mohon bantu
"Belajar Belajar Belajar I like VB & PHP"
User avatar
bboy43
Prajurit Dua
Prajurit Dua
 
Posts: 3
Joined: 16 Oct 2010, 23:08
Location: Bogor
Memberi kopi: 0 cangkir
Mendapat kopi: 0 cangkir

Re: Help Me Please tentang membuat program dari BORLAND C++

Postby mbahlawoe » 18 Mar 2011, 23:28

Code: Select all
#ifndef _layout
#define _layout

/* Screen.h (Fungsi-Fungsi Penanganan Layar)
/* Programmed By Yudy Patrianto */
/* Yogyakarta, Juli 1995*/

#include <dos.h>
#include <conio.h>
#include <string.h>

void boxfill(int left,int top,int right,int bottom,int attr,char ch=32);
void shadow(int left,int top,int right,int bottom,int attr=8);
void boxframe(int left,int top,int right,int bottom,int attr);
void boxshadow(int left,int top,int right,int bottom,int attr);
void scrollup(int left,int top,int right,int bottom,int attr,int n=1);
void scrolldown(int left,int top,int right,int bottom,int attr,int n=1);
void centre(int row,char *mess,int attr=7,int left=1,int right=80);
void nocursor();
void normalcursor();
void solidcursor();
void cmdline(char *amess[]);

void boxfill(int left,int top,int right,int bottom,int attr,char ch) {
     int length=right-left+1;
     for (register int line=top;line<=bottom;line++) {
   gotoxy(left,line);
   _AH=9;
   _AL=ch;
   _BH=0;
   _BL=attr;
   _CX=length;
   geninterrupt(0x10);
     }
}

void shadow(int left,int top,int right,int bottom,int attr) {
    register int a,b;
    for (a=top+1;a<bottom+1;a++) {
       // Posisi Kursor
       gotoxy(right+1,a);

       // Ambil Karakter pada posisi kursor
       _AH=8;
       _BH=0;
       geninterrupt(0x10);
       b=_AL;

       // Cetak Karakter pada posisi kursor
       _AH=9;
       _AL=b;
       _BL=attr;
       _CX=1;
       _BH=0;
       geninterrupt(0x10);
    }

    for (a=left+1;a<right+2;a++) {
       // Posisi Kursor
       gotoxy(a,bottom+1);

       // Ambil Karakter pada posisi kursor
       _AH=8;
       _BH=0;
       geninterrupt(0x10);
       b=_AL;

       // Cetak Karakter pada posisi kursor
       _AH=9;
       _AL=b;
       _BL=attr;
       _CX=1;
       _BH=0;
       geninterrupt(0x10);
    }
}

void boxframe(int left,int top,int right,int bottom,int attr) {
    textattr(attr);
    gotoxy(left,top);cprintf("%c",218);
    gotoxy(right,top);cprintf("%c",191);
    gotoxy(right,bottom);cprintf("%c",217);
    gotoxy(left,bottom);cprintf("%c",192);
    for (register row=top+1;row<bottom;row++) {
       gotoxy(left,row);cprintf("%c",179);
       gotoxy(right,row);cprintf("%c",179);
    }
    boxfill(left+1,top,right-1,top,attr,196);
    boxfill(left+1,bottom,right-1,bottom,attr,196);
}

void boxshadow(int left,int top,int right,int bottom,int attr) {
     boxfill(left,top,right,bottom,attr);
     boxframe(left,top,right,bottom,attr);
     shadow(left,top,right,bottom);
}

void scrollup(int left,int top,int right,int bottom,int attr,int n) {
   union REGS r;
   r.h.ah=6;
   r.h.al=n;
   r.h.ch=top-1;
   r.h.cl=left-1;
   r.h.dh=bottom-1;
   r.h.dl=right-1;
   r.h.bh=attr;
   int86(0x10,&r,&r);
}

void scrolldown(int left,int top,int right,int bottom,int attr,int n) {
   union REGS r;
   r.h.ah=7;
   r.h.al=n;
   r.h.ch=top-1;
   r.h.cl=left-1;
   r.h.dh=bottom-1;
   r.h.dl=right-1;
   r.h.bh=attr;
   int86(0x10,&r,&r);
}

void centre(int row,char *mess,int attr,int left,int right) {
   int col=(((right-left+1)-strlen(mess))/2)+left;
   textattr(attr);gotoxy(col,row);cprintf(mess);
}

void nocursor() {
     _setcursortype(_NOCURSOR);
}

void normalcursor() {
     _setcursortype(_NORMALCURSOR);
}

void solidcursor() {
     _setcursortype(_SOLIDCURSOR);
}

void cmdline(char *amess[]) {
     int colorkey=RED+LIGHTGRAY*16;
     int colortext=BLACK+LIGHTGRAY*16;
     boxfill(1,24,80,24,WHITE+LIGHTGRAY*16);gotoxy(1,24);
     int posrow=0;
     while (strlen(amess[posrow])!=0) {
    if ((posrow % 2)==0) {
        textattr(colorkey);gotoxy(wherex()+1,24);
        cprintf(amess[posrow]);
    }
    else {
        textattr(colortext);gotoxy(wherex(),24);
        cprintf(amess[posrow]);
    }
    posrow++;
     }
}

#endif


Udah cukup om?

Kalau kurang, ni kode untuk membuat class string (karena di borland C++ tidak ada string)

Code: Select all
#ifndef _strclass
#define _strclass

/* String.h (Class String)
/* Programmed By Yudy Patrianto */
/* Yogyakarta, Juli 1995*/

#include <iostream.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <mem.h>

const int _defstring=1;
const int _LEFT=1;
const int _RIGHT=0;

class string;
string replicate(int length,char ch=32);
string space(int length);

class string {
   private :
     char* str;
   public :
     string();                         // Constructor
     string(string &obj);              // Copy Constructor
     string(int length);               // Option Constructor
     string(char *ch);                 // Option Constructor
     string &operator=(char *ch);      // Overloading = char *
     string &operator=(string &obj);   // Overloading = string object
     string &operator<<(char *ch);     // Overloading << char *
     string &operator<<(string &obj);  // Overloading << string object
     ~string();                        // Destructor
     char operator[] (int);            // Overloading [] Array Access
     operator char*();                 // Conversion Operator
     void delch(int pos);
     void insch(int pos,char ch);
     void ovrch(int pos,char ch);

     friend ostream &operator<<(ostream &stream,string obj);
     friend string left(string obj,int length);
     friend string right(string obj,int length);
     friend string substr(string obj,int pos,int length);
     friend string ltrim(string obj);
     friend string rtrim(string obj);
     friend string trim(string obj);
     friend string padl(string obj,int length=1,char ch=32);
     friend string padr(string obj,int length=1,char ch=32);
     friend string padc(string obj,int length=1,char ch=32);

     friend int len(string obj);
     friend int operator==(string obj1,string obj2);
     friend int operator==(string obj1,char *ch);
};

string::string() {
    str=NULL;
}

string::string(string &obj) {
    str=new char[strlen(obj.str)+1];
    strcpy(str,obj.str);
}

string::string(char *ch) {
    str=new char[strlen(ch)+1];
    strcpy(str,ch);
}

string::string(int length) {
    str=new char[length+1];
}

string& string::operator=(char *ch) {
    if (str) delete [] str;
    str=new char[strlen(ch)+1];
    strcpy(str,ch);
    return *this;
}

string& string::operator=(string &obj) {
    if (str) delete [] str;
    str=new char[strlen(obj.str)+1];
    strcpy(str,obj.str);
    return *this;
}

string& string::operator<<(char *ch) {
    if (str) delete [] str;
    str=new char[strlen(ch)+1];
    strcpy(str,ch);
    return *this;
}

string& string::operator<<(string &obj) {
    if (str) delete [] str;
    str=new char[strlen(obj.str)+1];
    strcpy(str,obj.str);
    return *this;
}

string::~string() {
    if (str) delete [] str;
}

ostream &operator<<(ostream &stream,string obj) {
    stream << obj.str;
    return stream;
}

char string::operator[] (int pos) {
     return str[pos];
}

string::operator char*() {
  return str;
}

string left(string obj,int length) {
     string temp(length);
     for (int n=0;n<length;n++) temp.str[n]=obj.str[n];
     temp.str[length]=NULL;
     return temp;
}

string right(string obj,int length) {
     string temp(length);
     strcpy(temp,obj.str+strlen(obj.str)-length);
     return temp;
}

string substr(string obj,int pos,int length) {
    string temp(strlen(obj.str));
    temp=right(obj,strlen(obj.str)-pos);
    temp=left(temp,length);
    return temp;
}

string ltrim(string obj) {
   int length;
   for (int n=0;n<len(obj);n++) {
       if( obj.str[n]!=32) break;
   }
   length=len(obj)-n;
   string temp(length);
   temp=right(obj,length);
   return temp;
}

string trim(string obj) {
   string temp1;
   temp1=rtrim(ltrim(obj));
   string temp2(len(temp1));
   strcpy(temp2.str,temp1.str);
   return temp2;
}

string rtrim(string obj) {
   int length;
   for (int n=len(obj)-1;n>=0;n--) {
       if( obj.str[n]!=32) break;
   }
   length=len(obj)-n;
   string temp(len(obj)-length+1);
   temp=left(obj,len(obj)-length+1);
   return temp;

}

string padl(string obj,int length,char ch) {
   string temp(len(obj)+length);
   strcpy(temp.str,replicate(length,ch));
   strcat(temp.str,obj.str);
   return temp;
}

string padr(string obj,int length,char ch) {
   string temp(len(obj)+length);
   strcpy(temp.str,obj.str);
   strcat(temp.str,replicate(length,ch));
   return temp;
}

string padc(string obj,int length,char ch) {
   string temp(len(obj)+length+length);
   strcpy(temp.str,replicate(length,ch));
   strcat(temp.str,obj.str);
   strcat(temp.str,replicate(length,ch));
   return temp;
}

void string::delch(int pos) {
   for (int n=pos;n<strlen(str)-1;n++) str[n]=str[n+1];
   str[strlen(str)-1]=32;
}

void string::insch(int pos,char ch) {
    for (int n=strlen(str)-1;n>pos;n--) str[n]=str[n-1];
    str[pos]=ch;
}

void string::ovrch(int pos,char ch) {
    str[pos]=ch;
}

int len(string obj) {
    return strlen(obj.str);
}

int operator==(string obj1,string obj2) {
    int hasil=strcmp(obj1.str,obj2.str);
    return (hasil==0) ? 1:0;
}

int operator==(string obj1,char *ch) {
    int hasil=strcmp(obj1.str,ch);
    return (hasil==0) ? 1:0;
}

/*--------------------Fungsi Lepas-------------------------*/

string replicate(int length,char ch) {
    string temp(length);
    char *chtemp=new char[length+1];
    for (int n=0;n<length;n++) chtemp[n]=ch;
    chtemp[length]=NULL;
    temp=chtemp;
    if (chtemp) delete [] chtemp;
    return temp;
}

string space(int length) {
    return replicate(length);
}

string str(long data,int length=9,int alg=0) {
    char  *temp1;
    string temp2;

    temp1=new char[length+1];
    sprintf(temp1,"%ld",data);
    temp2=temp1;
    delete []temp1;

    if (len(temp2)>length) {
   temp2=replicate(length,'*');
    }
    else {
       if (alg) {
    temp2=padr(temp2,length-len(temp2));
       }
       else {
    temp2=padl(temp2,length-len(temp2));
       }
    }
    return temp2;
}

long val(string data) {
    long hasil;
    data=trim(data);
    hasil=atol(data);
    return hasil;
}

#endif
User avatar
mbahlawoe
C# Moderator
C# Moderator
 
Posts: 1377
Joined: 14 Mar 2010, 00:18
Location: Solo - Jawa Tengah
Memberi kopi: 61 cangkir
Mendapat kopi: 163 cangkir

Re: Help Me Please tentang membuat program dari BORLAND C++

Postby chipp » 21 Apr 2011, 20:18

wow, hrs banyak belajar dari mbah nih...
Image
User avatar
chipp
Prajurit Satu
Prajurit Satu
 
Posts: 128
Joined: 14 May 2010, 21:08
Memberi kopi: 0 cangkir
Mendapat kopi: 1 cangkir

Re: Help Me Please tentang membuat program dari BORLAND C++

Postby Seruling » 06 May 2011, 11:30

[quote="mbahlawoe"]
Code: Select all
/* Screen.h (Fungsi-Fungsi Penanganan Layar)
/* Programmed By Yudy Patrianto */
/* Yogyakarta, Juli 1995*/
...
...
... dan seterusnya...


@Mbah Lawoe
Taun pembuatan nya itu lho, 1995...
Masih pake DOS Interupt 10h, 21h... weleh-weleh... O:-)

Interupt nya kalau diterapkan di Command prompt Windows XP masih bisa apa enggak ya? Soalnya saya sempat bikin class seperti itu, lengkap dengan bikin Menu di layar DOS jaman biyen, yang tampilan menu nya mirip punya Dac Easy Accounting. 8-}
=== Seruling ===
User avatar
Seruling
Kopral Dua
Kopral Dua
 
Posts: 688
Joined: 28 Jun 2010, 19:01
Location: Berhadapan dengan Acer Aspire
Memberi kopi: 34 cangkir
Mendapat kopi: 37 cangkir

Re: Help Me Please tentang membuat program dari BORLAND C++

Postby mbahlawoe » 07 May 2011, 17:23

Seruling wrote:@Mbah Lawoe
Taun pembuatan nya itu lho, 1995...
Masih pake DOS Interupt 10h, 21h... weleh-weleh... O:-)

Interupt nya kalau diterapkan di Command prompt Windows XP masih bisa apa enggak ya? Soalnya saya sempat bikin class seperti itu, lengkap dengan bikin Menu di layar DOS jaman biyen, yang tampilan menu nya mirip punya Dac Easy Accounting. 8-}


Iya om tahun 90an.... Dulu belum seperti sekarang yang tinggal JUST CLICK... Bikin Efek Shadow aja setengah mati....

DEA??? jadi ingat.....
Saya dulu kerja di perusahaan "authorized dealer nya DEA", beruntung, saya belajar akuntansi dari situ...
Bahkan program2 saya banyak dipengaruhi oleh konsep & sistem DEA......


Untuk Interupt 10h, 21h dst.... saya belum coba di OS sekarang....
saya pake masih gunakana OS MS DOS 6.2 :))
User avatar
mbahlawoe
C# Moderator
C# Moderator
 
Posts: 1377
Joined: 14 Mar 2010, 00:18
Location: Solo - Jawa Tengah
Memberi kopi: 61 cangkir
Mendapat kopi: 163 cangkir

Re: Help Me Please tentang membuat program dari BORLAND C++

Postby nyiubi » 07 Jun 2011, 16:52

wee... udah master itu mah :-o :-o
User avatar
nyiubi
Prajurit Dua
Prajurit Dua
 
Posts: 46
Joined: 20 May 2011, 18:33
Memberi kopi: 17 cangkir
Mendapat kopi: 0 cangkir


Return to Visual C++ .NET

Who is online

Users browsing this forum: No registered users and 1 guest