TASHKENT UNIVERSITY OF INFORMATION TECHNOLOGIES
C PROGRAMMING COURSE
ASSIGNMENT 2
SUBMITTED BY: ZAFAR XAMIDOV (01-23 CEYU)
FOR ALL CODES THE REPLIT ONLINE COMPILER WAS USED
SCREESNSHOT OF TASK 1
1. PROGRAM TO FIND THE LARGEST AND
SMALLEST NUMBERS IN AN ARRAY
WRITTEN CODE OF TASK 1
#INCLUDE <STDIO.H>
INT MAIN() {
INT N, I, LARGEST, SMALLEST;
// PROMPT THE USER TO ENTER THE
NUMBER OF ELEMENTS
PRINTF("ENTER THE NUMBER OF
ELEMENTS: ");
SCANF("%D", &N);
INT ARR[N];
// READ THE ELEMENTS OF THE ARRAY
PRINTF("ENTER %D INTEGERS: ", N);
FOR (I = 0; I < N; I++) {
SCANF("%D", &ARR[I]);
}
// INITIALIZE LARGEST AND SMALLEST
TO THE FIRST ELEMENT
LARGEST = SMALLEST = ARR[0];
// LOOP THROUGH THE ARRAY TO
FIND LARGEST AND SMALLEST
FOR (I = 1; I < N; I++) {
IF (ARR[I] > LARGEST)
LARGEST = ARR[I];
IF (ARR[I] < SMALLEST)
SMALLEST = ARR[I];
}
// DISPLAY THE LARGEST AND
SMALLEST NUMBERS
PRINTF("THE LARGEST NUMBER IS:
%D\N", LARGEST);
PRINTF("THE SMALLEST NUMBER IS:
%D\N", SMALLEST);
RETURN 0;
}
SCREENSHOT OF TASK 2
2. PROGRAM TO GENERATE A MULTIPLICATION TABLE
WRITTEN CODE OF TASK 2
#INCLUDE <STDIO.H>
INT MAIN() {
INT N, I;
// PROMPT THE USER TO ENTER A
NUMBER
PRINTF("ENTER A NUMBER: ");
SCANF("%D", &N);
// PRINT THE MULTIPLICATION TABLE
FOR THE ENTERED NUMBER
PRINTF("MULTIPLICATION TABLE FOR
%D:\N", N);
FOR (I = 1; I <= 10; I++) {
PRINTF("%D X %D = %D\N", N, I, N *
I);
}
RETURN 0;
}
SCREENSHOT OF TASK 3
3. PROGRAM TO CHECK IF A NUMBER IS PRIME
WRITTEN CODE OF TASK 3
#INCLUDE <STDIO.H>
INT MAIN() {
INT NUM, I, ISPRIME = 1;
// PROMPT THE USER TO ENTER A
NUMBER
PRINTF("ENTER A NUMBER: ");
SCANF("%D", &NUM);
// CHECK FOR NUMBERS LESS THAN
OR EQUAL TO 1 (NOT PRIME)
IF (NUM <= 1) {
ISPRIME = 0;
} ELSE {
// CHECK DIVISORS FROM 2 TO THE
SQUARE ROOT OF THE NUMBER
FOR (I = 2; I * I <= NUM; I++) {
IF (NUM % I == 0) {
ISPRIME = 0;
BREAK; // EXIT LOOP IF A
DIVISOR IS FOUND
}
}
}
// DISPLAY WHETHER THE NUMBER IS
PRIME OR NOT
IF (ISPRIME)
PRINTF("%D IS A PRIME NUMBER.\N",
NUM);
ELSE
PRINTF("%D IS NOT A PRIME
NUMBER.\N", NUM);
RETURN 0;
}
SCREENSHOT OF TASK 4
4. PROGRAM TO CALCULATE FACTORIAL OF A NUMBER (C)
WRITTEN CODE OF TASK 4
#INCLUDE <STDIO.H>
INT MAIN() {
INT NUM, I;
UNSIGNED LONG LONG FACTORIAL = 1;
// USE UNSIGNED LONG LONG FOR LARGE
FACTORIALS
// PROMPT THE USER TO ENTER A
POSITIVE INTEGER
PRINTF("ENTER A POSITIVE INTEGER: ");
SCANF("%D", &NUM);
// HANDLE NEGATIVE INPUT
IF (NUM < 0) {
PRINTF("FACTORIAL IS NOT DEFINED
FOR NEGATIVE NUMBERS.\N");
} ELSE {
// CALCULATE FACTORIAL USING A
FOR LOOP
FOR (I = 1; I <= NUM; I++) {
FACTORIAL *= I;
}
// DISPLAY THE RESULT
PRINTF("THE FACTORIAL OF %D IS:
%LLU\N", NUM, FACTORIAL);
}
RETURN 0;
}
SCREENSHOT OF TASK 5
5. PROGRAM TO REVERSE AN ARRAY (C)
WRITTEN CODE OF TASK 5
#INCLUDE <STDIO.H>
INT MAIN() {
INT N, I;
// PROMPT THE USER TO ENTER THE NUMBER OF ELEMENTS
PRINTF("ENTER THE NUMBER OF ELEMENTS: ");
SCANF("%D", &N);
INT ARR[N];
// READ THE ELEMENTS OF THE ARRAY
PRINTF("ENTER %D INTEGERS: ", N);
FOR (I = 0; I < N; I++) {
SCANF("%D", &ARR[I]);
}
// DISPLAY THE ARRAY IN REVERSE ORDER
PRINTF("THE REVERSED ARRAY IS: ");
FOR (I = N - 1; I >= 0; I--) {
PRINTF("%D ", ARR[I]);
}
PRINTF("\N");
RETURN 0;
}