Rabu, Mei 29, 2013

C : Linked List Stack (Push & Pop)

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
struct LLNode
{
     int index;
     int data;
     struct LLNode *next;
};


void push(struct LLNode **t, int i)
{
 int value;
 struct LLNode *temp;
 temp = (struct LLNode *)malloc(sizeof(struct LLNode));
 printf("\n Push Data : ");
 scanf("%d",&value);
 temp->data=value;
 temp->index=i;
 temp->next = *t;
 *t = temp;

}

void pop(struct LLNode **t)
{
    struct LLNode *temp;
    if(*t == NULL)
        printf("\nStack is Empty\n");
    else
    {
        temp=*t;
        *t=temp->next;
    }
}

int main()
{
    int select, i=1;
    struct LLNode *head, *tail;
    head=NULL;

    printf("\n 1->Push \t\n 2->Pop \t\n 3->Exit\n Select :");
    scanf("%d",&select);

    while(select!=3)
    {
        switch(select)
        {
            case 1: push(&head,i);
                    i++;
                    tail=head;
                    printf("\nIndex | data\n");
                    printf("================\n");
                    while(tail!=NULL)
                    {
                        printf("%d | %d\n", tail->index, tail->data);
                        tail=tail->next;
                    }
                    break;

            case 2: pop(&head);
                    tail=head;
                    printf("\nIndex | data\n");
                    printf("================\n");
                    while(tail!=NULL)
                    {
                        printf("%d | %d\n", tail->index, tail->data);
                        tail=tail->next;
                    }
                    break;
            default: break;
        }
    printf("\n\n 1->Push \t\n 2->Pop \t\n 3->Exit\n Select :");
    scanf("%d",&select);
    }
    return 0;
}

C : Array Stack (Push & Pop)

#include <stdio.h>
typedef struct STACK
{
    int top;
    int list[3];
} stack;

void create(stack *t)
{
    t->top =-1;
}

int empty(stack *t)
{
    if(t->top == -1) return (1);
    else return(0);
}

void push(stack *t)
{
    int data;
    if (full(t) == 1)
        printf("\nStack is Full\n");
    else
    {
        printf("\nPush Data : ");
        scanf("%d",&data);
        t->top++;
        t->list[t->top] = data;
    }
}

void pop(stack *t)
{
    if(empty(t) == 1)
        printf("\nStack is Empty\n");
    else
        t->top--;
         printf("\nStack is pop!\n");
}

int full(stack *t)
{
    if (t->top == 3)
        return (1);
    else
        return (0);
}

int main()
{
    int select;
    stack t;
    create(&t);

    printf(" 1->Push \t\n 2->Pop \t\n 3->Exit\n Select :");
    scanf("%d",&select);

    while(select!=3)
    {
        switch(select)
        {
            case 1: push(&t);
                    break;

            case 2: pop(&t);
                    break;

            default:break;
        }
        printf(" 1->Push \t\n 2->Pop \t\n 3->Exit\n Select :");
        scanf("%d",&select);
    }

    return 0;
}

C: Linked List & Interchange (Swap)

Soalan :
Write a C program to create a linked list and interchange the elements to the list at position  'm' and 'n' and display contents of the list before and after interchanging the elements.

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

struct link
{
 int data;
 struct link *next;
};
struct link *start=NULL;

void create();
void display();
void swap();

void main()
{
 int ch;
 do
 {
  printf("\n\n--------Main Menu--------");
  printf("\n1. Create");
  printf("\n2. Swap");
  printf("\n3. Exit");
  printf("\n\nEnter Your Choice >>");
  scanf("%d",&ch);
  switch(ch)
  {
   case 1:
    create(); 
    display();
    break;
   case 2:
    swap();
    display();
    break;
   case 3:
    exit(0);
    break;
   default:
    printf("\nInvalid Choice... Try Again");
    getch();
  }/*End of switch*/
 }while(ch!=3);/*End of while loop*/
}/*End of void main()*/
void create()
{
 struct link *p,*node;
 printf("\nEnter Data >> ");
 p=(struct link*)malloc(sizeof(struct link));
 scanf("%d",&p->data);
 p->next=NULL;
 if(start==NULL)
 start=p;
 else
 {
  node=start;
  while(node->next!=NULL)
  node=node->next;
  node->next=p;
 }/*End of else*/
}/*End of void create()*/

void display()
{
 struct link *node;
 if(start==NULL)
 {
  printf("\nList Is Empty");
  getch();
 }/*End of if*/
 node=start;
 while(node!=NULL)
 {
  printf("%d ",node->data);
  node=node->next;
 }/*End of while loop*/
 getch();
}/*End of void display()*/
void swap()
{
 int m,n,i;
 struct link *node1,*node2;
 if(start==NULL)
 {
  printf("\nList Is Empty");
 }/*End of if*/
 node1=start;
 printf("\nEnter Mth Position >> ");
 scanf("%d",&m);
 for(i=0;i< m;i++)
 {
  node1=node1->next;
  if(node1==NULL)
  {
   printf("\nWrong Location Enterred..");
  }/*End of if*/
 }/*End of i for loop*/
 printf("\nEnter Nth Position >> ");
 scanf("%d",&n);
 node2=start;
 for(i=0;i< n;i++)
 {
  node2=node2->next;
  if(node2==NULL)
  {
   printf("\nWrong Location Enterred..");
  }/*End of if*/
 }/*End of i for loop*/
 node1->data=(node1->data)+(node2->data)-((node2->data)=(node1->data));
 printf("\nElement Swapped\n");
}

C: Doubly Linked List

Soalan :
Write  a C program  to perform the  following  operations  on  a doubly linked  list:
i.  To create  a list  by adding each node  at the  front.
ii.  To display  all the  elements  in  the reverse order.

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

struct linkedlist
{
 int item;
 struct linkedlist *right,*left;
};

typedef struct linkedlist node;

void main()
{
 node *start,*end;
 int choice;
 int menu(void);
 node *create(node **lastnode);
 void display(node *first,node *last);
 void insert(node **first,node **last);
 void del(node **first,node **last);
 printf("\n DOUBLY LINKED LIST");
 printf("\n ******************");
 do
 {
  printf("\n\nMain menu");
  printf("\n\n1.Create \n2.Insert \n3.Delete \n4.Display \n5.Exit");
  choice =menu();

  switch(choice)
  {
   case 1:
   printf("\n Enter the data(-999 to stop):");
   start=create(&end);
   continue;

   case 2:
   insert(&start,&end);
   printf("\n");
   continue;

   case 3:
   del(&start,&end);
   printf("\n");
   continue;

   case 4:
   display(start,end);
   printf("\n");
   continue;

   case 5:
   exit(0);

   default:
   printf("\n\nINVALID CHOICE...");
  }
 }while(1);
}

int menu()
{
 int choice;
 do
 {
  printf("\n Enter your choice:");
  scanf("%d",&choice);
  if(choice<1||choice>5)
  printf("\n Wrong choice");
 }
  while(choice<1||choice>5);
  printf("\n");
  return(choice);
}

node *create(node **lastnode)
{
 node *temp,*firstnode;
 int info;
 *lastnode=NULL;
 firstnode=NULL;
 scanf("%d",&info);

 while(info!=-999)
 {
  temp=(node *)malloc(sizeof(node));
  temp->item=info;
  temp->right=NULL;
  if(firstnode==NULL)
  {
   temp->left=NULL;
   firstnode=temp;
  }
 else
 {
  temp->left=(*lastnode);
  (*lastnode)->right=temp;
 }
 (*lastnode)=temp;
 scanf("%d",&info);
 }
if(firstnode!=NULL)
(*lastnode)=temp;
return(firstnode);
}

void display(node *first,node *last)
{
 printf("\n Forward traversal\n");
 while(first!=NULL)
 {
  printf("%d\t",first->item);
  first=first->right;
 }
  printf("\n Backward traversal\n");
  while(last!=NULL)
  {
   printf("%d\t",last->item);
   last=last->left;
  }
  return;
}

void insert(node **first,node **last)
{
 node *newnode;
 int newitem;
 int position;
 node *temp;
 int i;
 printf("\n New data item:");
 scanf("%d",&newitem);
 do
 {
  printf("\n Position of insertion:");
  scanf("%d",&position);
 }
 while(position<=0);
 if(((*first)==NULL)||(position==1))
 {
  newnode=(node *)malloc(sizeof(node));
  newnode->item=newitem;
  newnode->right=*first;
  newnode->left=NULL;
  if((*first)!=NULL)
  (*first)->left=newnode;
 else
 (*last)=newnode;
 *first=newnode;
 }
 else
 {
  i=1;
  temp=*first;
  while((i<position-1)&&(temp->right!=NULL))
  {
   i++;
   temp=temp->right;
  }
  newnode=(node *)malloc(sizeof(node));
  newnode->item=newitem;
  newnode->right=temp->right;
  if(temp->right!=NULL)
  temp->right->left=newnode;
  newnode->left=temp;
  temp->right=newnode;
 }
 if(newnode->right==NULL)
 *last=newnode;
}

void del(node **first,node **last)
{
 node *temp,*prev;
 int target;
 printf("\n Enter the data to be deleted:");
 scanf("%d",&target);

 if(*first==NULL)
  printf("\n List is empty");
 else if((*first)->item==target)
 {
  if((*first)->right==NULL)
  *first=*last=NULL;

  else
  {
   *first=(*first)->right;
   (*first)->left=NULL;
  }
 }
 else
 {
  temp=*first;
  prev=NULL;
  while((temp->right!=NULL)&&(temp->item!=target))
  {
   prev=temp;
   temp=temp->right;
  }
  if(temp->item!=target)
  printf("\n Element not found");
  else
  {
   if(temp==*last)
   *last=prev;
   else
   temp->right->left=temp->left;
   prev->right=temp->right;
  }
 }
}

C : Singly Linked List

Soalan :
Write a C program to simulate an ordinary queue using a singly linked list.

Jawapan:
#include<stdio.h>
#include<conio.h>
#include<alloc.h>
#include<stdlib.h>

struct node
{
 int data;
 struct node *link;
}; struct node *cur,*first,*last;

 void create();
 void insert_rear();
 void delete_front();
 void display();

void create()
{

 printf("\n Enter the first element: ");
 cur=(struct node *)malloc(sizeof(struct node));
 scanf("%d",&cur->data);
 cur->link=NULL;
 first=cur;
 last=cur;
}

void insert_rear()
{
 printf("\n Enter the next element: ");
 cur=(struct node *)malloc(sizeof(struct node));
 scanf("%d",&cur->data);
 cur->link=NULL;
 last->link=cur;
 last=cur;
}
void delete_front()
{
 if(first==NULL)
 {
  printf("\t\n Queue is empty\n");
 }
 else
 {
  cur=first;
  first=first->link;
  cur->link=NULL;
  printf("\n Deleted element is %d\n",cur->data);
  free(cur);
 }
}
void display()
{
 cur=first;
 printf("\n");
 while(cur!=NULL)
 {
  printf("\t%d",cur->data);
  cur=cur->link;
 }
}

void main()
{
 int ch;
 system("cls");
 create();
 display();
 while(1)
 {
  printf("\n--------------------------");
  printf("\n 1.INSERT \n 2.DELETE \n");
  printf("\n Enter your choice >> ");
  scanf("%d",&ch);

  switch(ch)
  {
   case 1:
    insert_rear();
    display();
    break;
   case 2:
    delete_front();
    display();
    break;
   default:
    exit(0);
  }
 }
}

C: Siapa yang loop dan berapa nilai x ?

Assalamualaikum dan salam sejahtera, aturcara ringkas yang aku tulis untuk memudahkan beginner memahami teknik asas looping. Semoga aturcara ini dapat membantu mereka yang ingin / mula berjinak dalam bidang pengaturcaraan. Yosh!
#include <stdio.h>
int main()
{
 int big = 10, x=1;
 printf("start = %d\n",x);
 for (x=2;x<3;x++)
 {
  printf("inner = %d\n",x );
 }
 printf("outer = %d\n",x);
    return 0;
}

8086 : Convert String Number To Binary

ISU MENGENAI SIKAP PELAJAR UTHM

Assalamualaikum dan salam sejahtera, Hari ini aku menulis sesuatu yang agak peribadi dan menyentuh tentang sikap kemanusian di kalangan mahasiswa tempatan. Secara terus terang dan telus aku letakkan tajuk mengenai UTHM, berharap agak penulisan ini akan menjadi bahan bacaan agak kita semua dapat membaiki kelemahan yang sudah lama wujud ini. Sebuah artikel yang akan menyentuh satu belah pihak sahaja iaitu pelajar. secara asasnya kandungan intipati Universiti Tun Hussein Onn Malaysia ini adalah terdiri daripada pelajar mengerakkan hala tuju universiti ini.

Bermula mengenai pemikiran logik dan membuat keputusan kritikal, saya perhatikan ramai mahasiswa lemah dan tak mampu untuk memahami sesuatu situasi dengan baik. Sekaligus ramai membuat keputusan secara suka-suka dan melulu. Tanpa memikirkan mengenai kesan yang mungkin timbul serta spekulasi yang wujud. Sebagai contoh mudah, saya cuba terang mengenai perkara ini melalui situasi di mana terdapat sekumpulan mahasiswa yang terdiri daripada 5 orang ahli kumpulan sedang berkumpul sebagai persediaan penyampaian projek mereka. Dalam perbincangan tersebut, mereka memilih untuk membuat undi melalui teknik "kotak beracun", maka sesiapa yang terpilih akan membuat penyampaian. Di sini kita dapat lihat, berlaku tidak keberkesanan dalam membuat keputusan. Mereka sepatutnya berkumpul dan berbincang dan meletakkan stategi yang sesuai untuk membuat penyampaian yang berkesan. Mereka juga haruslah bersikap adil. Tindakan tanpa menitik beratkan kesan yang mungkin berlaku menunjukkan pemikiran logik adalah amat rendah dan berlakulah keputusan kritikal yang lemah.

Pembaziran masa berbincang, daripada pandangan saya. Perbincang kerja dalam berkumpulan sudah menjadi tidak berkesan. Komunikasi telah menjadi kurang efektif. Terlalu ramai yang pandai bercakap, namun sayangnya hanya tin kosong yang kuat berbunyi. Perbincangan yang sepatutnya membawa kepada penyelesaian masalah tidak lagi sesuai. Mereka yang pandai mengunakan kata-kata telah menabur banyak janji manis dan palsu. Kebanyakan masih lagi tidak mampu untuk bertindak. Akhirnya perbincangan hanya tinggal perbincangan. Kerja langsung tak terjalan, masalah tiada penyelesaian dan masa terhakis dibazir oleh waktu perbincangan yang terlalu panjang. Para mahasiswa harus meletakan bom masa dalam perbincangan. Perhatikan siapa yang berkaliber dan mampu untuk membawa penyelesaian. Pastikan bukan mereka yang hanya pandai bercakap sahaja tetapi mampu bertindak.

Adab serta tatasusila juga penting bagi seseorang yang bergelar mahasiswa. Bukalah mata dan lihatlah ke dunia sebenar. Hormatilah mereka yang patut dihormati. Berbeza pula dengan hormatilah mereka yang tua. Pada dasarnya, kita berada di universiti yang dipacu oleh staff dan pensyarah. Namun mereka bukannya sempurna, ada kalanya perasaaan ego dan cuba mengambil kesempatan datang di godaan syaitan yang di rejam. Jangan takut bersuara dan bertindak. Perjuangkanlah hak kamu. Jangan terikat atas adab dan adat. Jangan biarkan kesilapan orang atasan di letakkan atas bahu kita dan dipersalahkan atas silap yang tidak kita lakukan. Hormatilah mereka yang memahami erti hormat antara satu sama lain dan jagalah tatasusila dalam perjuangan kamu. Jangan pula terlalu ikutkan darah muda dan pengalaman yang cetek kamu. Realisasikan pandangan dan wawasan yang jauh kehadapan.

Rabu, Mei 22, 2013

C: Tahun Lompat

#include<stdio.h>
int main(){
    int year;
    printf("Masukkan tahun: ");
    scanf("%d",&year);
    if(((year%4==0)&&(year%100!=0))||(year%400==0))
         printf("%d adalah tahun lompat\n",year);
    else
         printf("%d bukan tahun lompat\n",year);
    return 0;
}

C: Kira berapa bilangan huruf dan patah perkataan

#include<stdio.h>
#include<conio.h>
int main()
{
 int count_words=0,count_char=0,i;
 char str[20];
 printf("Masukkan teks : ");
 gets(str);
 for(i=0; str[i]!=NULL; i++)
 {
   count_char++;
   if(str[i]==' ')
      count_words++;
 }
 printf("\nBil huruf     : %d",count_char);
 printf("\nBil perkataan : %d",count_words+1);
 getch();
 return 0;
}

Selasa, Mei 21, 2013

Cara membaiki root:x:0:0:root:/root:/bin/bash^M

Masalah ni muncul apabila tak dapat untuk akses SSH ke server dan bila disemak pada bahagian /etc/passwd dihujungnya menjadi ^M . Contohnya :

root:x:0:0:root:/root:/bin/bash^M

Cara untuk membaiki masalah tersebut:

==============================
1) run as single user
2) fix vi /etc/passwd remove ^M
3) boot up

Sekian dan wassalam ~
Sumber : https://www.facebook.com/LowKey88/posts/4799118298324

Isnin, Mei 20, 2013

C : Fungsi perpustakaan atoi()

Assalamualaikum & salam sejahtera.. Hari ni aku jumpa 1 fungsi yang sangat menarik untuk dikongsikan berkaitan pengaturcaraan bahasa C. Terdapat satu fungsi terbina daripada fail perpustakaan <stdlib.h> yang boleh manipulasikan string dan integer. Bertindak untuk menapis parameter yang di hantar kepadanya kepada nilai integer sahaja.Fungsi yang dimaksudkan ialah atoi() , juga dikenali sebagai ASCII to Integer.

Fungsi int atoi(const char *str) akan menukar parameter str kepada integer (int). Fungsi ini akan membuang whitespace yang terkandung dalam parameter yang dihantar kepadanya terlebih dahulu. Sekiranya fungsi ini tidak memenuhi kehendak, maka ia akan memulangkan nilai 0.

Contoh aturcara :
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
   int val;
   char str[20];

   strcpy(str, "1234567890");
   val = atoi(str);
   printf("String value = %s, Int value = %d\n", str, val);

   strcpy(str, "0x2013.blogspot.com");
   val = atoi(str);
   printf("String value = %s, Int value = %d\n", str, val);

   return(0);
}

Hasil :
String value = 1234567890, Int value = 1234567890
String value = 0x2013.blogspot.com, Int value = 0

Itu sahaja daripada saya. Semoga bermanfaat. Sekian terima kasih. Wassalam ~

Sabtu, Mei 18, 2013

JAVA : Menghubungkan Pangkalan Data Oracle Melalui JDBC

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
 
/**
 * Simple Java Program to connect Oracle database by using Oracle JDBC thin driver
 * Make sure you have Oracle JDBC thin driver in your classpath before running this program
 * @author
 */
public class OracleJdbcExample {
 
    public static void main(String args[]) throws SQLException {
        //URL of Oracle database server
        String url = "jdbc:oracle:thin:@localhost:1632:DEVROOT32";
 
        //properties for creating connection to Oracle database
        Properties props = new Properties();
        props.setProperty("user", "scott");
        props.setProperty("password", "tiger");
 
        //creating connection to Oracle database using JDBC
        Connection conn = DriverManager.getConnection(url,props);
 
        String sql ="select sysdate as current_day from dual";
 
        //creating PreparedStatement object to execute query
        PreparedStatement preStatement = conn.prepareStatement(sql);
 
        ResultSet result = preStatement.executeQuery();
 
        while(result.next()){
            System.out.println("Current Date from Oracle : " +result.getString("current_day"));
        }
        System.out.println("done");
 
    }
}

C++ : Menukar Nilai Decimal Kepada Binari

#include <iostream>
using namespace std;
int main()
{
    long dec,rem,i=1,sum=0;
    cout<<"Enter the decimal to be converted:";
    cin>>dec;
    do
    {
        rem=dec%2;
        sum=sum + (i*rem);
        dec=dec/2;
        i=i*10;
    }while(dec>0);
    cout<<"The binary of the given number is:"<<sum<<endl;
    cin.get();
    cin.get();
    return 0;
}

C++ : Menukar Nilai Heximal Kepada Binari

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

int main()
{
    int d,n,i,j,a[50];

    printf("Enter a number:");
    scanf("%d",&n);

    if(n==0)
        printf("\nThe binary conversion of 0 is 0");
    else
        {
            printf("\nThe binary conversion of %d is 1",n);

        for(i=1;n!=1;++i)
        {
            d=n%2;
            a[i]=d;
            n=n/2;
        }
        for(j=i-1;j>0;--j)
            printf("%d",a[j]);
        }
        getch();
    return (0);
}

Jumaat, Mei 17, 2013

8086 : Programming Tahap Otai! (Emu8086)

Menggunakan Emulator-8086
Kod Aturcara :

Khamis, Mei 16, 2013

C : Caesar Cipher

#include <stdio.h>

void encrypt(int shift);

int main(void)
{
 int shift;
 int decOrEnc;
 
 printf("Amount of shifts: ");
 scanf("%d", &shift);
 if (shift < 0)
 {
  printf("Bad Input.");
  return 0;
 }
 printf("Type 1 to encrypt or 0 to decrypt: ");
 scanf("%d", &decOrEnc);
 if (decOrEnc != 0 && decOrEnc !=1)
 {
  printf("Bad Input.");
  return 0;
 }
 while(getchar() != '\n');
 if (decOrEnc == 1)
  encrypt(shift);
 else
 {
  shift = -1 * shift;
  encrypt(shift);
 }
 return 0;
}

void encrypt(int shift)
{
 char ch;
 printf("Please enter a string: ");
 ch = getchar();
 while(ch != '\n')
 {
  if (ch == ' ')
   putchar(ch);
  else
  {
   if(shift == 1)
    putchar(ch + shift);
   else
    putchar(ch - shift);
  }
  ch = getchar();
 }
 putchar(ch);
}

Rabu, Mei 15, 2013

Berita Harian - Risiko kemalangan jalan raya di Parit Raja semakin tinggi (Khamis - 24.3.2011])

Selasa, Mei 14, 2013

Kemalangan Bas Sikun Jaya UTHM ( 14 Mei 2013 )

Assalamualaikum & salam sejahtera, Seperti biasa ada sahaja berlaku kemalangan di jalan raya hadapan kawasan Universiti Tun Hussein Onn. Hari ini, berlaku kemalangan membabitkan pengangkutan awam universiti iaitu perkhidmatan bas ulang-alik. Kemalangan melibatkan sebuah bas Sikun melanggar jentera berat backhole ditepi jalan. Kemalangan ini berlaku kira-kira jam 10 pagi, 14 Mei 2013.

Berdasarkan sumber yang diperolehi kemalangan berlaku adalah daripada kesilapan pemandu bas Sikun Jaya kerana merempuh belakang jentera berat backhole yang berada di tepi jalan raya tersebut. 

Berdasarkan gambar di atas, papan tanda awas telah diletakkan di tepi jalan. Namun malang tidak berbau. Untuk kupasan, laluan lurus daripada Parit Raja sehingga hadapan Universiti Tun Hussein Onn menuju ke bandar Batu Pahat adalah antara jalan yang paling sibuk di Malaysia. Kebanyakkan pemandu tidak membawa kenderaan secara selamat dan berhemah. Ramai pemandu memecut dengan laju ketika membawa kenderaan masing-masing. Keadaan jalan yang berlubang dan bumping juga salah satu faktor yang menyumbang kepada kemalangan. Suasana bertambah sibuk dan berbahaya pada waktu kemuncak. 

Pejalan kaki juga sangat risau untuk melintas jalan raya dihadapan UTHM. Ramai pemandu dan pembonceng yang melanggar lampu isyarat tanpa memikirkan keselamatan pengguna jalan raya yang lain. 

Sikap penduduk kampung yang keluar masuk simpang perkampungan (parit-parit) dengan kenderaan masing-masing  secara mengejut juga adalah amat tidak wajar.   Pesanan saya, sama-samalah kita menjaga keselamatan diri dan orang lain. Wassalam ~





Sabtu, Mei 11, 2013

Kehidupan Pelajar Universiti

Semakin hari semakin membosankan
Assalamualaikum & salam sejahtera kepada pembaca blog ini. Dengan pantas masa berlalu, hanya tinggal 29 hari sahaja sebelum peperiksaan akhir semester sewaktu artikel ini ditulis. Banyak kerja yang perlu disiapkan. Coretan kehidupan mahasiswa semakin membebankan.

Kadang-kadang aku tertanya, adakah memang menjadi tali ukur seseorang mahasiswa melalui pencapaian akademiknya sahaja. ? Bagaimana pula dengan pensyarah? Dalam semester ini, ada beberapa kelas aku hadiri mempunyai tenaga pengajar yang entah apa-apa. Mengajar pun tak reti, tapi demand dengan pelajarnya. Masalah sungguh kalau macam ni. Macam mana lah pensyarah macam ni boleh ada kat Universiti Tun Hussein Onn ni. 

Banyak subjek aku kena ulang kaji sendiri. Datang kelas langsung aku tak dapat apa-apa input. Pensyarah asyik baca slide je. Oh, ya.. slide tu pun pensyarah ambil daripada sumber internet (slide yang dah siap). Kreadit hasil kerja asal pun dipadam dan pensyarah tersebut meletakkan nama dia. Bukankah itu plagiat ? Disebabkan adanya slide yang "siap untuk digunakan" yang boleh dimuat-turun dari internet membuatkan pensyarah kurang bersedia. Mereka datang mengajar pelajar untuk membaca sahaja. Bukan menurunkan ilmu. Oh, ya aku agak menyampah bila pensyarah mengeluarkan kata-kata "kami dulu belajar cari nota sendiri". Yelah tu, kamu buat nota pun "cari sendiri" kan?

Berbalik pula kepada pelajar. Dalam aktiviti berkumpulan untuk menyiapkan tugasan atau projek. Mahasiswa patutnya mempunyai stategi untuk menang dan berjaya. Tapi malangnya pelbagai masalah yang timbul. Terutamanya sleeping-partner yang memang membuatkan aku rasa geram sangat. Ada juga sikap sesetengah pelajar yang ambil lewa. Maklumlah dah rasa diri tu terlalu pandai.

Sampai disini sahaja aku menulis. Sekadar meluahkan pada yang tak senang dihati ini. Wassalam~