Skip to content

Instantly share code, notes, and snippets.

@gph03n1x
Last active August 29, 2015 14:08
Show Gist options
  • Save gph03n1x/0fadd4c95fdb0fa33a05 to your computer and use it in GitHub Desktop.
Save gph03n1x/0fadd4c95fdb0fa33a05 to your computer and use it in GitHub Desktop.
Ασκήσεις Εργαστηρίου
#include <stdio.h>
#include <locale.h> /* για ελληνικούς χαρακτήρες */
#include <conio.h> /* για το getch */
int main() {
setlocale(LC_ALL, ""); /* για ελληνικούς χαρακτήρες */
/* Καταχώρηση μεταβλητών */
int number;
char singl_c;
float num1, num2;
/* Δεχόμαστε την είσοδο */
printf("%ls", L"Πληκτρολογήστε ένα χαρακτήρα:");
scanf("%c", &singl_c);
printf("%ls", L"Πληκτρολογήστε ένα αριθμό:");
scanf("%d", &number);
printf("%ls %c\n", L"Ο χαρακτήρας που δώσατε είναι ο", singl_c);
printf("%ls %d\n", L"Ο αριθμός που δώσατε είναι ο", number);
printf("%ls", L"Πληκτρολογήστε δύο αριμούς διαχωρισμένους με κόμμα: ");
scanf("%f,%f", &num1, &num2);
/* υπολογισμοί */
printf("%.1f+%.1f=%.1f\n", num1, num2, num1+num2);
printf("%.1f-%.1f=%.1f\n", num1, num2, num1-num2);
printf("%.1f*%.1f=%.1f\n", num1, num2, num1*num2);
printf("Type anything to exit...");
getch(); /* παγώνει το πρόγραμμα μέχρι να πατήσει κάτι ο χρήστης ώστε
να προλάβει να δει την έξοδο*/
return 0;
}
/* EOF */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
#include <conio.h> /* για την getch */
int main() {
setlocale(LC_ALL, "");
/* καθορίζουμε τον τύπο των μεταβλητών */
char calc_action;
char *continue_action, *confirm_continue = "yes";
float num1, num2;
int loop_bool = 1;
/* εκχωρούμε το input */
printf("%ls (+,-,*,/): ", L"Πληκτρολογήστε την πράξη που θες να πραγματοποιηθεί");
scanf("%c", &calc_action);
printf("%ls: ", L"Δώσε δύο αριθμούς διαχωρισμένους με κενό");
scanf("%f %f", &num1, &num2);
while (loop_bool == 1){
printf("Debug : %c %f %f ", calc_action, num1, num2);
/* υπολογισμοί */
if (calc_action == '+') {
printf("%ls %.1f , %.1f = %.1f\n", L"Το αποτέλεσμα της + μεταξύ των αριθμών", num1, num2, num1+num2);
} else if (calc_action == '-') {
printf("%ls %.1f , %.1f = %.1f\n", L"Το αποτέλεσμα της - μεταξύ των αριθμών", num1, num2, num1-num2);
} else if (calc_action == '*') {
printf("%ls %.1f , %.1f = %.1f\n", L"Το αποτέλεσμα της * μεταξύ των αριθμών", num1, num2, num1*num2);
} else if ((calc_action == '/') && (num2 != (float)0)) {
printf("%ls %.1f , %.1f = %.1f\n", L"Το αποτέλεσμα της / μεταξύ των αριθμών", num1, num2, num1/num2);
} else {
printf("Invalid action...\n");
}
printf("%ls (yes): ", L"θέλετε να κάνετε κάποια άλλη πράξη");
scanf("%s", continue_action);
fseek(stdin,0,SEEK_END);
if (strcmp(continue_action, confirm_continue) != 0) {
loop_bool = 0;
} else {
system("cls");
printf("%ls (+,-,*,/): ", L"Πληκτρολογήστε την πράξη που θες να πραγματοποιηθεί");
scanf("%c", &calc_action);
printf("%ls: ", L"Δώσε δύο αριθμούς διαχωρισμένους με κενό");
scanf("%f %f", &num1, &num2);
}
}
printf("Type anything to exit...");
getch(); /* παγώνει το πρόγραμμα μέχρι να εισάγει κάτι ο χρήστης ώστε
να μην τερματιζει απότομα ώστε να προλάβει να διαβάσει το output*/
return 0;
}
/* EOF */
#include <stdio.h>
int main() {
int previous, next, last;
next = 1;
last = 1000;
for (previous = 0; previous < last; previous++){
printf("%d \n", previous);
next = next + previous;
previous = next - previous - 1;
}
return 0;
}/* EOF */
#include <stdio.h>
int main() {
char option, answer;
float number;
do {
printf("Menu :\n");
printf("1)Celsius to fahreneit\n");
printf("2)Fahreneit to celsius\n");
printf("Choose which conversion you want: ");
scanf("%c", &option);
fseek(stdin,0,SEEK_END);
if (option == '1') {
printf("Please enter the temperature: ");
scanf("%f", &number);
fseek(stdin,0,SEEK_END);
number = number * 9 / 5 + 32;
printf("The result is : %f\n", number);
} else if (option == '2') {
printf("Please enter the temperature: ");
scanf("%f", &number);
fseek(stdin,0,SEEK_END);
number = (number - 32) * 5 / 9;
printf("The result is : %f\n", number);
} else {
printf("The option you chose doesn't exist...\n");
}
printf("Do you want to make another conversion (y/n):");
scanf("%c", &answer);
fseek(stdin,0,SEEK_END);
if ((answer != 'y') && (answer != 'Y')) {
break;
}
} while (1);
return 0;
}
#include <stdio.h>
#include <conio.h>
int main() {
int i,j, pinakas[8][8];
for (i=0; i<8; ++i){
for (j=0; j<8; ++j) {
pinakas[i][j] = i + j + 1;
}
}
for (i=0; i<8; ++i){
printf("\t");
for (j=0; j<8; ++j) {
printf("%d\t", pinakas[i][j]);
}
printf("\n");
}
getch();
}
#include <stdio.h>
#include <conio.h>
int main() {
float average, age, male_age[10], female_age[10];
int people_ar, count, gender, person_count[2]; /*
* 0 stands for females ,
* 1 for males
*/
person_count[0] = 0;
person_count[1] = 0;
for (people_ar = 0; people_ar < 10; people_ar++) {
do {
printf("Give gender (0 for female, 1 for male):");
scanf("%d", &gender);
} while (gender != 1 && gender != 0);
person_count[gender]++;
do {
printf("Give age:");
scanf("%f", &age);
} while (gender > 100 || gender < 0);
if (gender == 1) {
male_age[person_count[gender] - 1] = age;
} else {
female_age[person_count[gender] - 1] = age;
}
}
average = 0;
for (count = 0; count < person_count[0]; count++) {
average += male_age[count];
}
printf("Male average: %.1f\n", average / person_count[1]);
average = 0;
for (count = 0; count < person_count[1]; count++) {
average += female_age[count];
}
printf("Male average: %.1f\n", average / person_count[0]);
getch();
}
#include <stdio.h>
#include <conio.h>
int main() {
int i, pinakas[10];
int min, max;
scanf("%d", &pinakas[0]);
min = pinakas[0];
max = pinakas[0];
for (i=1; i<10; i++) {
scanf("%d", &pinakas[i]);
if (pinakas[i] > max) {
max = pinakas[i];
}
if (pinakas[i] < min) {
min = pinakas[i];
}
}
for (i=0; i<10; i++) {
printf("Max: %d\n Min: %d\n Max-Min: %d\n", max, min, max-min);
}
getch();
}
#include <stdio.h>
#include <conio.h>
#define SIZE 11
int binary_search(int my_array[], int key);
int main() {
int key, pass, column, temp, result;
int my_array[SIZE] = {65, 89, 4, 35, 12, 47, 9, 7, 100, 32, 60};
printf("Give a search key:");
scanf("%d", &key);
for (pass = 0 ; pass < SIZE - 1; pass++) {
for (column = 0; column < SIZE - 1; column++) {
if (my_array[column] > my_array[column + 1]) {
temp = my_array[column];
my_array[column] = my_array[column + 1];
my_array[column + 1] = temp;
}
}
}
result = binary_search(my_array, key);
if ( result == -1 ) {
printf("key not found\n");
} else {
printf("key found at position: %d", result);
}
getch();
}
int binary_search(int my_array[], int key) {
int low = 0, high = SIZE - 1, middle;
while ( low <= high ){
middle = ( low + high ) / 2;
if ( key == my_array[ middle ] ) {
return middle;
} else if ( key < my_array[ middle ]) {
high = middle - 1;
} else {
low = middle + 1;
}
}
return -1;
}
#include <stdio.h>
#include <conio.h>
#define SIZE 11
int main() {
int key, pass, column, temp;
int my_array[SIZE] = {65, 89, 4, 35, 12, 47, 9, 7, 100, 32, 60};
/* used array example from exercise 8 */
for (pass = 0 ; pass < SIZE - 1; pass++) {
for (column = 0; column < SIZE - 1; column++) {
if (my_array[column] < my_array[column + 1]) { /* modified part */
temp = my_array[column];
my_array[column] = my_array[column + 1];
my_array[column + 1] = temp;
}
}
}
for (column = 0; column < SIZE; column++) {
printf(" %d ", my_array[column]);
}
getch();
}
#include <stdio.h>
#include <conio.h>
#define SIZE 11
int main() {
int key, pass, column, temp;
int my_array[SIZE] = {65, 89, 4, 35, 12, 47, 9, 7, 100, 32, 60};
/* used array example from exercise 8 */
int swapped;
for (pass = 0 ; pass < SIZE - 1; pass++) {
swapped = 0;
for (column = 0; column < SIZE - 1; column++) {
if (my_array[column] > my_array[column + 1]) {
temp = my_array[column];
my_array[column] = my_array[column + 1];
my_array[column + 1] = temp;
swapped = 1;
}
}
if (swapped == 0) break;
}
for (column = 0; column < SIZE; column++) {
printf("[%d] %d ", column,my_array[column]);
}
getch();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment