Kamis, 28 Mei 2015

prak 9 .. grafika komputer

#include <windows.h> 
#include <stdio.h> 
#include <stdlib.h> 
#include <string.h>
#include <stdarg.h> 
#include <glut.h>
//#include <glu.h>



void initRendering() {
    glEnable(GL_DEPTH_TEST);
    glEnable(GL_COLOR_MATERIAL);
    glEnable(GL_LIGHTING);
    glEnable(GL_LIGHT0);
    glEnable(GL_LIGHT1);
    glEnable(GL_NORMALIZE);
    glShadeModel(GL_SMOOTH);
}

void handleResize(int w, int h) {
    glViewport(0, 0, w, h);
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluPerspective(45.0, (double)w / (double)h, 1.0, 200.0);
}

float _angle = 60.0f;
void drawScene() {
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glMatrixMode(GL_MODELVIEW);
    glLoadIdentity();
    glTranslatef(0.0f, 0.0f, -8.0f);

    GLfloat ambientColor[] = {0.2f, 0.2f, 0.2f, 1.0f};
    glLightModelfv(GL_LIGHT_MODEL_AMBIENT, ambientColor);

    GLfloat lightColor0[] = {0.5f, 0.5f, 0.5f, 1.0f};
    GLfloat lightPos0[] = {4.0f, 0.0f, 8.0f, 1.0f};
    glLightfv(GL_LIGHT0, GL_DIFFUSE, lightColor0);
    glLightfv(GL_LIGHT0, GL_POSITION, lightPos0);
//radius
    GLfloat lightColor1[] = {1.0f, 1.0f, 1.0f, 1.0f};

    GLfloat lightPos1[] = {-1.0f, 0.5f, 0.5f, 0.0f};
    glLightfv(GL_LIGHT1, GL_DIFFUSE, lightColor1);
    glLightfv(GL_LIGHT1, GL_POSITION, lightPos1);

        glRotatef(_angle, 1.0f, 0.0f, 0.0f); //putar

        glColor3f(1.0f, 1.0f, 0.0f); //warna
        glBegin(GL_QUADS);
   
        //depan
        glNormal3f(1.0f, 1.0f, 1.0f);
        glVertex3f(-1.0f, -2.0f, 1.0f);
        glVertex3f(-1.0f, -2.0f, 1.0f);
        glVertex3f(1.5f, 1.0f, 1.5f);
        glVertex3f(-1.5f, 1.0f, 1.5f);

        //kanan
        glColor3f(0.0f, 0.0f, 1.0f); //warna biru
        glNormal3f(0.0f, 0.0f, 1.0f);
        glVertex3f(1.0f, -1.0f, -1.0f);
        glVertex3f(1.5f, 1.0f, -1.5f);
        glVertex3f(1.5f, 1.0f, 1.5f);
        glVertex3f(1.0f, -1.0f, 1.0f);

        //belakang
        glColor3f(0.0f, 1.0f, 0.0f); //warna hijau
        glNormal3f(0.0f, 0.0f, 1.0f);
        glVertex3f(-1.0f, -1.0f, -1.0f);
        glVertex3f(-1.5f, 1.0f, -1.5f);
        glVertex3f(1.5f, 1.0f, -1.5f);
        glVertex3f(1.0f, -1.0f, -1.0f);

        //kiri
        glColor3f(1.0f, 0.0f, 0.0f); //warna merah
        glNormal3f(0.0f, 0.0f, 1.0f);
        glVertex3f(-1.5f, -1.0f, -1.5f);
        glVertex3f(-1.5f, -1.0f, 1.5f);
        glVertex3f(-1.5f, 1.0f, 1.5f);
        glVertex3f(-1.5f, 1.0f, -1.5f);

        //bawah
        glColor3f(1.0f, 1.0f, 1.0f); //warna
        glNormal3f(0.0f, 0.0f, 1.0f);
        glVertex3f(-1.5f, 1.0f, 1.5f);
        glVertex3f(1.5f, 1.0f, 1.5f);
        glVertex3f(1.5f, 1.0f, -1.5f);
        glVertex3f(-1.5f, 1.0f, -1.5f);


        glEnd();
    glutSwapBuffers();
}

void update(int value) {
    _angle += 1.5f;
    if (_angle > 360) {
        _angle -= 360;
    }
   
    glutPostRedisplay();
    glutTimerFunc(25, update, 0);
}

int main(int argc, char** argv) {
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
    glutInitWindowSize(400, 400);
    glutCreateWindow("Lighting - videotutorialsrock.com");
    initRendering();
    glutDisplayFunc(drawScene);
    glutReshapeFunc(handleResize);   
    glutTimerFunc(25, update, 0);
   
    glutMainLoop();
    return 0;
}

Rabu, 01 April 2015

Homegroup adalah beberapa komputer di home network yang bisa saling berbagi gambar, musik, video, dokumen, dan printer. Homegroup diproteksi dengan sebuah password.

Selasa, 17 Maret 2015

program c++ algoritma pangkat . prak 1 #strategi algoritma

#include <cstdlib>
#include <iostream>

using namespace std;


    int pangkat (int a , int n ) {
       
        int k, hasil ;
        hasil = 1 ;
        for (k=1 ; k<=n;k++ ){
            hasil= hasil *a ;
            }
            return hasil ;
           
            }
       
    int main(int argc, char *argv[])
           
{
            int a ;
            int n ;
            int k ;
           
            cout<<"\n<<<PEROGRAM MENCARI HASIL PANGKAT>>>\n";
            cout<<"------------------------------------\n";
            cout<<"\tMasukan Angka   = ";cin>>a;
            cout<<"\tMasukan Pangkat = ";cin>>n;
            cout<<"\n Hasil dari "<<a<<" pangkat "<<n<< " = "<< pangkat(a,n);
         
    system("PAUSE");
    return EXIT_SUCCESS;
}

Jumat, 03 Oktober 2014

prak 3.1 APBO

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package praktikum3;

/**
 *
 * @author Praktikan
 */
public class Mahasiswa extends Manusia{
    private String nim;
    private String prodi ;
   
   
    public Mahasiswa (){}
   
    public Mahasiswa (String nim){
    this.nim = nim;
    }
   
    public void setNim(String nim){
        this.nim = nim;
    }
   
    public String getNim(){
        return nim;
    }
   
    public String getProdi () {
       
        return prodi ;
       
    }
           
   public void setProdi (String Prodi ){
          
        this.prodi=Prodi;
   }
}

prak 3 . APBO

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package praktikum3;

/**
 *
 * @author Praktikan
 */
public class Praktikum3 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Mahasiswa mhs =new Mahasiswa();
        mhs.setNim("1300018021");
        mhs.setNama("Ridha ammi lestari");
        mhs.setAlamat("payaman utara girirejo imogiri bantul");
        mhs.setProdi("teknik informatika" );
       
       
        System.out.println("Nim : "+mhs.getNim());
        System.out.println("Nama : "+mhs.getNama());
        System.out.println("Alamat : "+mhs.getAlamat());
        System.out.println ("Prodi : "+mhs.getProdi ());
       
       
    }
}

Jumat, 06 Juni 2014

program c++ pointer perulangan


#include <cstdlib>
#include <iostream>

class node {
  public :
        int data;
        node *berikut;
        };

using namespace std;

int main(int argc, char *argv[])
{
    node *A;
    A = new node;
    A->data = 1;
    A->berikut = NULL;
   
    node *B;
    B = new node;
    B->data = 2;
    B->berikut = NULL;
   
    node *C;
    C = new node;
    C->data = 3;
    C->berikut = NULL;
   
    node *D;
    D = new node;
    D->data = 4;
    D->berikut = NULL;
   
    A->berikut = B;
    B->berikut = C;
    C->berikut = D;
   
    cout << "Menggunakan perulangan untuk mencetak setiap data pada rantai\n";
 node *berikut = A;
 int i = 1;
 while (berikut != NULL) {
 cout << "Data ke-" << i << " > " << berikut->data << endl;
 i++;
 berikut = berikut->berikut;
}
    system("PAUSE");
    return EXIT_SUCCESS;
}

Jumat, 30 Mei 2014

praktikum matdisk 9

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

using namespace std;

int hasil;
//funsi faktorial :
int faktorial (int nilai)
{
hasil = nilai;
while(nilai>1)
{
hasil = hasil*(nilai-1);
nilai = nilai-1;
}
return hasil;
}
main()
{
int p,nq,max,x,i,j,n,k,r,s,tr,no ;
int a[100];
div_t xx;

for (i=0;i<100;i++)
{
a[i] =0;
}
//Tampilkan pembuka
printf("\n PROGRAM GENERATE PERMUTASI\n\n");
printf (" \ ____RIDHA AMMI LETARI____ \n\n");
printf (" \ ________1300018021________ \n\n");

//input nilai n(jumlah data <maksimal 100>)
printf("Masukan nilai n : ");
scanf("%d",&n);
//input data ke dalam array
for(i=1;i<=n;i++) //ulangi untuk semua data hingga data ke-n
{
printf("Masukan nilai himpunan a[%d] : ",i);
scanf("%d",&a[i]);
}

//input nilai r
printf("nilai r : ");
scanf("%d",&tr);

//hitung nilai permutasi
p=faktorial(n);
nq=faktorial(n-tr);
if(nq==0)nq=1;
max=p/nq;

printf("nilai permutasi : %d\n\nTekan Enter untuk melihat hasil generate permutasi...\n",max);

getche();//fungsi membaca karakter keyboard
no=1;//variabel untuk menampilkan nomor

//men-generate permutasi dengan
//algoritma generate next-permutation

//genere sabanyak nilai permutasi
for(x=1;x<=max;x++)
{
printf("%3d. ",no);
for(i=1;i<=tr;i++)
printf("%d",a[i]);
printf("\n",a[i]);
no++;

j=n-1;
while(a[j] > a[j+1])
j=j-1 ; //j adalah subcript terbesar dengan aj<aj+1
k=n;
while(a[j] > a[k])
k=k-1 ; //ak adalah integer terkecil dan lebih besar dari aj

//tukar aj dan ak
i=a[k];
a[k]=a[j];
a[j]=i;

r=n;
s=j+1;
while (r>s)
{
//tukar ar dan as
i=a[r];
a[r]=a[s];
a[s]=i;

r=r-1;
s=s+1;
}
}

system("PAUSE");
return EXIT_SUCCESS;
}
Postingan Lama Beranda

 

Followers

 

Blogroll

Templates by ridha ammi | CSS3 by David Walsh | Powered by {N}Code & Blogger