Admin2 12 Report post Posted April 8, 2008 (edited) Kepada member putera.com sekalian, di sini ada beberapa soalan kuiz yang di ambil dari satu source. Siapa yang pandai jawab akan diberi mata ganjaran. Ganjaran dia ialah...... jeng jeng jeng. Jwab2! kuikuikui...EXERCISE 1(a) Get five integer numbers from the user.( Store the numbers in an array called Number.© Display all the numbers on screen.(d) Modify the program so that it prints the reverse of the numbers.CONTOH OUTPUT :Enter numbers : 1Enter numbers : 2Enter numbers : 3Enter numbers : 4Enter numbers : 51 2 3 4 55 4 3 2 1 Press any key to continueEXERCISE 2(a) Get three kilograms values from the user and keep it in an array called Kilo.( Access each of the kilogram values from array Kilo using a while loop, convert the kilogram into gram and store it in an array called Gram.© Display all the values from array Kilo and array Gram.CONTOH OUTPUT:Enter Kilograms : 3.4Enter Kilograms : 2.0Enter Kilograms : 1.553.40 kilograms equals to 3400.00 grams2.00 kilograms equals to 2000.00 grams1.55 kilograms equals to 1550.00 gramsPress any key to continueEXERCISE 3(a) Get five floating point numbers from the user in main() and store the numbers in an array called Salary. ( use do while loop )( Call function display(...) in main() and send array Salary.© Display the numbers in function display(...) using for loop.CONTOH OUTPUT:Enter Salary : 3450.00Enter Salary : 1250.00Enter Salary : 5000.00Enter Salary : 2300.00Enter Salary : 1800.00Salary = 3450.00Salary = 1250.00Salary = 5000.00Salary = 2300.00Salary = 1800.00Press any key to continueEXERCISE 4(a) Create an arrayof type integer called students that has 3 rows and 2 columns( For each student, get two quiz marks.© Add the two marks, and display the total on the screen.CONTOH OUTPUTMarks for student 1Enter Quiz Marks 1: 34Enter Quiz Marks 2: 56Total marks for student 1 : 90Marks for student 2Enter Quiz Marks 1: 23Enter Quiz Marks 2: 43Total marks for student 2 : 66Marks for student 3Enter Quiz Marks 1: 67Enter Quiz Marks 2: 17Total marks for student 3 : 84Press any key to continueEXERCISE 5(a) Create an array of type float called Square that has 3 rows and 2 columns.( For each Square, get the measurements.© Send the array Square to function calculate(...).(d) In function calculate(...) calculate and display the area for each square. CONTOH OUTPUT:Measurement for Square 1Enter measurement 1: 2Enter measurement 2: 3Measurement for Square 2Enter measurement 1: 4Enter measurement 2: 5Measurement for Square 3Enter measurement 1: 6Enter measurement 2: 7Measurement 1 : 2.00Measurement 2 : 3.00Area for Square 1 : 6.00Measurement 1 : 4.00Measurement 2 : 5.00Area for Square 2 : 20.00Measurement 1 : 6.00Measurement 2 : 7.00Area for Square 3 : 42.00Press any key to muncul Edited April 9, 2008 by afat Quote Share this post Link to post Share on other sites
Admin2 12 Report post Posted April 9, 2008 //Soalan nombor 1. PLease check the error huhuhuhu.#include<stdio.h>main(){ int i, j, Number[5]; for (i=0; i<5; i++) { printf("Enter numbers: "); scanf("%d",&Number); } for (j=0; j<5; j++) { printf("%d\t", Number); } printf("\n"); for (j=5; j>0; j--) { // code; } {printf("%d\t", Number); }}} Quote Share this post Link to post Share on other sites
rizal 1 Report post Posted April 9, 2008 awat "crash" lak bila aku dah selesai inputkan?sy pakai dev c++dah taruk getchar(); kat bawah dia. Quote Share this post Link to post Share on other sites
rizal 1 Report post Posted April 9, 2008 #include <stdio.h>#include <iostream.h>#define N 3int main(int argc, char *argv[]){ int i; int kg[N]; kg[0]=0; for(i=0;i<N;i++) { cin>>"Enter Your Kilograms Values">>kg[N]; } for(i=0;i<N;i++) { cout<<"In Gram values:"<<kg[N]*1000; } return 0;}utk soalan nomb 2 Quote Share this post Link to post Share on other sites
betik 11 Report post Posted April 9, 2008 //Soalan nombor 1. PLease check the error huhuhuhu.#include<stdio.h>main(){ int i, j, Number[5]; for (i=0; i<5; i++) { printf("Enter numbers: "); scanf("%d",&Number); } for (j=0; j<5; j++) { printf("%d\t", Number); } printf("\n"); for (j=5; j>0; j--) { // code; } {printf("%d\t", Number); }}}1) main perlu return int...2) for (j=0; j<5; j++){ printf("%d\t", Number[i]); } for loop guna varibale j...apsal lak guna variable i utk dpt data dari Number[]?... tukar Number kpd Number[j] 3) for (j=5; j>0; j--) { printf("%d\t", Number[i]); } array start dr 0...so, utk access data yang ke-5 dr Number[]...j tu mestilah j=5-1... j tu mestilah sehingga j=0 utk access data yg pertama dr array tu...so c0de tu jd: for (j=4; j>=0; j--) { printf("%d\t", Number[j]); // <----Number[j]...bkn Number[i] }happy c0ding! Quote Share this post Link to post Share on other sites
betik 11 Report post Posted April 9, 2008 (edited) #include <stdio.h>#include <iostream.h>#define N 3int main(int argc, char *argv[]){ int i; int kg[N]; kg[0]=0; for(i=0;i<N;i++) { cin>>"Enter Your Kilograms Values">>kg[N]; } for(i=0;i<N;i++) { cout<<"In Gram values:"<<kg[N]*1000; } return 0;}utk soalan nomb 2 sikit je silap...kat cin>>"Enter Your Kilograms Values">>kg[N]; }...cin tu akan crashkan program ko sbb dia x tau nak letak mana input dr user sbb ko letak string kat situ...huhu...satu lagi...seprti pos seblum ni...tukar kg[N] kepada kg...sbb kg[N] = kg[3]...tp ko bkn nak deal dgn data yg ke-4 dr array tu...ko nak increment dr kg[0] ke kg[2]...kalu buat camtu, setiap input dr user akan diletakkan ke kg[3] (edit: sedangkan array size ko 3 je...bkn sampai 4) dan kg[0] sampai kg[2] akan ada junk data (sebab ko x initalizekan kan array tu..huhu)kat for loop yg kedua juga kg[N] tukar kepada kg...so, c0de tu ke tukar jd:cout<<"Enter Your Kilograms Values: ">>; cin>>kg[i] Edited April 9, 2008 by betik Quote Share this post Link to post Share on other sites
rizal 1 Report post Posted April 11, 2008 hehehhehee... silap sket ajer.. x der masa ndak ekjas.hehehee... Quote Share this post Link to post Share on other sites
Admin2 12 Report post Posted April 11, 2008 oh ok thanx betik. ha ni jawapan untuk soalan 1,2,3 dan 4. SOALAN 1#include<stdio.h> main() { int i,Number[5]; for (i=0; i<5; i++) { printf("Enter Number: "); scanf("%d" ,&Number[i]); } for (i=0; i<5; i++) { printf("%d\t" ,Number[i]); } printf("\n"); for(i=4; i>=0; i--) { printf("%d\t", Number[i]); } } Jawapan SOalan 2: #include<stdio.h> main() { float kilo[3], gram[3]; int i; i = 0; while(i < 3) { printf("enter kilograms: "); scanf("%f", &kilo[i]); i++; } for(i=0; i<3; i++) { gram[i] = kilo[i]*1000; printf("%.2f kilograms equals to %.2f grams\n", kilo[i], gram[i]); } } Jawapan soalan 3: #include<stdio.h> void display(float []); main() { float Salary[5]; int loop = 0; do { printf("Enter Salary: "); scanf("%f", &Salary[loop]); loop++; } while (loop < 5); display(Salary); } void display(float Salary[]) { int loop; for(loop = 0; loop<5; loop++) { printf("Salary = %.2f\n", Salary[loop]); } } Jawapan soalan 4 #include<stdio.h> #include<stdlib.h> main() { float Student[3][2]; int total, i, j; for(i = 0; i <= 2; i++) { printf("Marks for student %d\n\n", i+1); total = 0; for(j = 0; j <= 1; j++) { printf("Enter Quiz Marks %d: ", j+1); scanf("%f", &Student[i][j]); total = total + Student[i][j]; } printf("Total marks for student %d : %d\n\n", i+1, total); } }huhu betik ngan rizal hebat! korang tryla check code2 kat atas ni. mana tau boleh belajar ke. Kalau siapa boleh buat soalan nombor 5 memang aku respect gila la. huhuhu. putera sekalian? ganjaran untuk soalan 5? Quote Share this post Link to post Share on other sites
rizal 1 Report post Posted April 12, 2008 yey! aku hebat!! :P Quote Share this post Link to post Share on other sites
betik 11 Report post Posted April 13, 2008 utk soklan #4, 'total' tu sepatutnya float jugak...dan utk soklan #5, lebih kurang je ngan soklan #4...cuma perlu panggil satu function 'calculate' utk kira dan display kiraan... Quote Share this post Link to post Share on other sites
Admin2 12 Report post Posted April 13, 2008 (edited) huhu aku tersekat kat code bawah ni. help!! huhu#include<stdio.h> #include<stdlib.h> void calculate(float, float); //measurement1 dan measurement2 main() { float Square[3][2], area; int i, j; for (i=0; i<=2; i++) // untuk loop prompt dan untuk letak nilai dalam array { printf("Measurement for Square %d: \n\n", i+1); area = 0; for (j=0; j<=1; j++) // Untuk loop prompt dan untuk letak nilai dalam array { printf("Enter measurement %d:", j+1); scanf("%f", &Square[i][j]); area = Square[i][j] * Square[i][j]; // Aku rasa yang ni salah sebab dia tak darabkan Measurement pertama dengan measurement ke-2. Macam mana nak fix? yang soalan 4 tu memang lebih kurang sama. tapi dia ada operasi tambah markah so senang je dapat output. kalau darab?? } printf("Squre = %f", area); //TEST OUTPUT } }Camne ek? huhu. Betik, RIZAL dan lain2 jawab2! huhuhu. Edited April 13, 2008 by afat Quote Share this post Link to post Share on other sites
betik 11 Report post Posted April 13, 2008 area = Square[j] * Square[j]; // Aku rasa yang ni salah sebab dia tak darabkan Measurement pertama dengan measurement ke-2. Macam mana nak fix? yang soalan 4 tu memang lebih kurang sama. tapi dia ada operasi tambah markah so senang je dapat output. kalau darab??bukan masalah tambah n darab aku rasa..ko kompius ngan 2d array ...c0de tu, ko trus darabkan square[0][0] ngan square [0][0]...dan slps iteration kedua, ko drb square[0][1] dgn square[0][1]... so output ko cuma akan akan kuar hasil darab measuremnet 2..bkn measuremnet 1 * measruement 2...ko try ubah:area = Square[j-1] * Square[j]; //letak luar for loop ke-2 sblm printf tutp utk ikut soklan, ko kena guna function utk calculate n display output...so, hint dia:1) utk pass 2d array, cuma declare size array ke-2...(e.g: void calculate(sq[][2]))2) call funcrtion slps kuar for loop ke-23) try pass nilai 'i' skali utk paparkan nilai dr array yg betultry buat dulu.. Quote Share this post Link to post Share on other sites
Admin2 12 Report post Posted April 14, 2008 betik! thanx jap ada soalan ni. hebat la!yang line niarea = Square[i][j-1] * Square[i][j]; //letak luar for loop ke-2 sblm printf tu kenapa j-1 ? memang confius betul la array ni. aku dah try memang boleh dia kira array tu. tapi yang bahagian call array tu susah tol la. huhu. boleh tunjuk coding? pastu bila coding tu aku tak faham aku tanya bahagian mana aku tak faham. skrang ni aku tak faham line ni: area = Square[i][j-1] * Square[i][j]; //letak luar for loop ke-2 sblm printf tuKenapa j-1? Quote Share this post Link to post Share on other sites
betik 11 Report post Posted April 14, 2008 yang line niarea = Square[i][j-1] * Square[i][j]; //letak luar for loop ke-2 sblm printf tu kenapa j-1 ? memang confius betul la array ni.hmm...ko da tau kan kalu 2d array, kalu arr[3][2], bermakna array tu ada 3 row, 2 column (dlm bahsa mudah, ttp komputer x berfikir camtu...ia hanyalah single array pada dasarnya)... array ko ada 3 row, 2 column.. pada for loop pertama...nilai i mewakili row... for loop kedua, nilai j mewakili column... so, pada iteration pertama(dlm for loop pertama), i=0...so ia mewakili row 1(array start ngan 0)... pastu, dlm for loop ke-2, j=0... so, ko trus execute code : area = Square[j] * Square[j]; so area akan ada nilai square[0][0] * square[0][0] <----ni sama juga ngan measurement 1 darab measuremnet 1.. pd iteration ke-2 dlm for loop ke-2: i=0, j=1.. so, ko excute lg area = Square[j] * Square[j]; bermakna ko darab measuremnt 2 dgn measuremnet 2 (square[0][1] * square[0][1])... tp ko nk measurenment 1 darab measuremnet 2.... measurement 1 = square[0][0] measuremnt 2 = square[0][1]... so, itu pasal j-1 = 0 dan j=1... huhu...aku pon da x reti nk trgkan guna ayat..haha.. contoh utk function calculte: void calculate(float sq[][2], int index){ float area = 0; area = sq[index][0] * sq[index][1]; printf("Squares = %.2f",area); } utk call function tu: calculate(Square,i); // call slps leuar for loop ke-2...i mewakili row Quote Share this post Link to post Share on other sites
Admin2 12 Report post Posted April 14, 2008 (edited) huhu betik2 thanx2 aku dah faham sket2. yang j-1 tu. tapi ni aku ubah code tu jadi macam kat bawah ni. kenapa output kedua dan ketiga aku tak dapat? aku masukkan input berdasarkan kat soalan aku post . ni code dia: Huhu#include<stdio.h> void calculate(float[]); //measurement1 dan measurement2 main() { float Square[3][2], area; int i, j; for (i=0; i<=2; i++) // untuk loop prompt dan untuk letak nilai dalam array { printf("\nMeasurement for Square %d: \n\n", i+1); for (j=0; j<=1; j++) // Untuk loop prompt dan untuk letak nilai dalam array { printf("Enter measurement %d: ", j+1); scanf("%f", &Square[i][j]); } } calculate(Square); } void calculate (float Square[2][3]) { float area; int i, j; printf("\n"); for (i=0; i<3; i++) { area = 1; for(j=0;j<2; j++) { printf("Measurement %d = %.2f\n", j+1, Square[i][j]); area = area * Square[i][j]; } printf("Area of square %d = %.2f\n", i+1, area); } }rasanya kat mana salah? tolong please.. thanx betik Edited April 14, 2008 by afat Quote Share this post Link to post Share on other sites
Admin2 12 Report post Posted April 14, 2008 (edited) BETIK2!! aku dah dapat jawapan. rupa2nya aku salah declare array iaitu Square[3][2] bukan Square[2][3]. huhuu thanx2. aku try2 ubah2 code aku ada dua cara. satu cam kau ajar yang j-1 dan satu lagi aku declare area = 1.#include<stdio.h> void calculate(float[]); //measurement1 dan measurement2 main() { float Square[3][2], area; int i, j; for (i=0; i<=2; i++) // untuk loop prompt dan untuk letak nilai dalam array { printf("\nMeasurement for Square %d: \n\n", i+1); for (j=0; j<=1; j++) // Untuk loop prompt dan untuk letak nilai dalam array { printf("Enter measurement %d: ", j+1); scanf("%f", &Square[i][j]); } } calculate(Square); } void calculate (float Square[3][2]) { float area; int i, j; printf("\n"); for (i=0; i<3; i++) { area = 1; for(j=0;j<2; j++) { printf("Measurement %d = %.2f\n", j+1, Square[i][j]); area = area * Square[i][j]; //area = Square[i][j-1]*Square[i][j]; // yang ni kalau aku pakai pun boleh. huuhuuh thanx2 hebat2! } printf("Area of square %d = %.2f\n", i+1, area); } }BETIK meh call aku 0136286523. aku toptup RM 5 hinggit hahaha.. tu je ganjaran nyer.. boley? Edited April 14, 2008 by afat Quote Share this post Link to post Share on other sites
betik 11 Report post Posted April 27, 2008 BETIK meh call aku 0136286523. aku toptup RM 5 hinggit hahaha.. tu je ganjaran nyer.. boley?haha...xpe..aku tlg ikhlas je..no prob.. Quote Share this post Link to post Share on other sites
crazy_labelle 0 Report post Posted May 6, 2008 QUOTE(afat @ Apr 14 2008, 08:27 PM) BETIK meh call aku 0136286523. aku toptup RM 5 hinggit hahaha.. tu je ganjaran nyer.. boley?haha...xpe..aku tlg ikhlas je..no prob..haha... ko banjer die choki2 cukup... die ok jeh... haha... p/s: dgn ak berkire tol... tanye skit kene anto kambing 3 ekor jd sate la... kene bayar rm50 kat kaunter a la... haha... Quote Share this post Link to post Share on other sites
Admin2 12 Report post Posted May 7, 2008 hehe. betik memang baik! kekeke Quote Share this post Link to post Share on other sites