![]() ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Int x,y,sum,pr,raz;Double del; printf("Введите 2 целых числа: "); scanf("%d%d",&x,&y); fff(x,y,&sum,&pr,&raz,&del); printf("%d+%d=%d\n",x,y,sum); printf("%d-%d=%d\n",x,y,raz); printf("%d*%d=%d\n",x,y,pr); printf("%d/%d=%.2lf\n",x,y,del); } void fff(int a,int b,int*p1,int*p2,int*p3,double*p4) { *p1=a+b; *p2=a*b; *p3=a-b; *p4=(double)a/b; } Задачи:
Генерация случайных чисел. #include<stdio.h> #include<time.h> #include<stdlib.h> Void main() { Int n; for(int i=1;i<=120;i++) { n=rand(); printf("n%d=%d\n",i,n); } } Функция rand() генерирует числа в диапазоне от 0 до 32767, т.е. до положительного максимального двухбайтного целого значения и прототип функции rand и функции srand находится в <stdlib.h>. Чтобы регулировать ширину диапазона используется операция вычисления остатка %, n = a + rand()%(b-a+1), т.е. [a,b], #include<stdio.h> #include<time.h> #include<stdlib.h> Void main() { Int n; for(int i=1;i<=20;i++) { n=1+rand()%10; printf("n%d=%d\n",i,n); } } для того чтобы при новом вызове программы числа были разные необходимо включить функциюsrand (unsingned int), которая получает в качестве аргумента число в пределах от 0 до 65535, если unsingned int в 2-х байтах и от 0 до 4294967295 если в 4-х байтах, и для того чтобы каждый раз не задавать различные числа передаем функцию time(NULL); прототип, которой находится в <time.h> 3.5 Некоторые функции из <time.h> time_t time(time_t*timer); Функция time определяет текущее календарное время. Функция time возвращает наилучшее приближение текущего календарного времени, обеспечиваемое реализацией. Если календарное время не доступно, то возвращаемое значение (time_t, которое является арифметическим типом, используемый для предоставления времени) -1. Если timer не является нулевым указателем, то возвращаемое значение помещается в объект, на который ссылается указатель. #include<stdio.h> #include<time.h> #include<stdlib.h> Void main() { Int n; Srand(time(NULL)); for(int i=1;i<=20;i++) { n=1+rand()%10; printf("n%d=%d\n",i,n); } } А если хотим узнать длительность выполнения программы, то можем использовать функцию difftime(). double difftime(time_t time1,time_t ime0); Функция difftime вычисляет разность между двумя значениями календарного времени: time1 и time0. Возвращает время, выраженная в секундах, как значение типа double. Например: #include <stdio.h> #include<time.h> void main(){ time_t time0,time1; time0=time(NULL); Здесь сама программа time1=time(NULL); printf("\n\n%lf\n",difftime(time1,time0)); } Задачи: 1. Программа выбирает число в пределе [7,57] и мы угадываем это число. Причем программа начало спрашивает число [7,57], потом если мы ввели число больше чем она выбрала, то спрашивает число [7,введенное нами число], если введенное нами число меньше то [введенное нами число, 57] #include<stdio.h> #include<stdlib.h> #include<time.h> void main(){ int n,x,a,b,k=1; a=7; b=57; Srand(time(NULL)); n=7+rand()%51; printf("Vvedite chislo [%d,%d] ",a,b); scanf("%d",&x); while(x!=n) { k++; if(x<n) a=x; if(x>n) b=x; printf("Vvedite chislo [%d,%d] ",a,b); scanf("%d",&x); } printf("Vi ugadali s %d popitki!!!\n",k); } 2. Программа, которая помогает выучить таблицу умножения. Программа печатает вопрос типа Сколько будет 6 * 7? Затем вводится ответ. Если ответ правильный, то программа печатает “МОЛОДЕЦ!!!!”, если же неверно, то печатает “попробуй еще раз” и дает возможность ввода нового числа, до тех пор пока не получит правильный ответ. #include<stdio.h> #include<stdlib.h> #include<time.h> Void main() { Int n1,n2,n; Srand(time(NULL)); n1=1+rand()%9; n2=1+rand()%9; printf("Chemy ravno\n%d * %d?",n1,n2); printf("\nVvedite otvet: "); scanf("%d",&n); while(n!=n1*n2) { printf("\a\aVi otvetili neverno!!!!\nPopitaytes eshe: "); scanf("%d",&n); } printf("\nMOLODEC!!!!\n"); } Не нашли, что искали? Воспользуйтесь поиском:
|