Измерить время выполнения программы - C (СИ)
Формулировка задачи:
#include <stdio.h>
#include <math.h>
#include <time.h>
main ()
{ FILE *in;
FILE *out;
float x,y;
clock_t start, end;
start = clock();
in=fopen("acc.txt","r");
out=fopen("out.txt", "w");
fscanf(in, "%f %f", &x, &y);
if ((x<=0||x>=1000000)||(y<=0||y>=1000000))
{fprintf (out, "Nedopustimie znacheniya\n");
end = clock();
fprintf(out, "%.4lf\n", (end - start) / (CLOCKS_PER_SEC));
}
else
{
fprintf(out, "P vpisannogo kvadrata vpisannogo v okrujnost raven %.3f; S ravna %.3f; \nP opisanogo okolo okrujnosti kvadrata raven %.3f; S ravna %.3f\n", (sqrt(2)*4*x), (x*x*2), (8*x), (4*x*x));
fprintf(out, "P orrujnosti vpisanoi v kvadrat raven %.3f; S ravna %.3f;\nP orrujnosti opisannoi okolo kvadrata ravna %.3f; S ravna %.3f\n", (3.14*y), (3.14*y*y/4), (3.14*y*sqrt(2)), (3.14*2*y*y));
fprintf(out, "P ravnostoronnego treugolnika vpisannogo v okrujnost raven %.3f; S ravna %.3f;\nP ravnostoronnego treugolnika opisannogo okolo okrujnosi raven %.3f; S ravna %.3f\n", (0.87*x*6), (x*x*0.87*0.87*2*0.87), (6*sqrt(3)*x), (3*sqrt(3)*x*x));
fprintf(out, "P okrujnosti vpisannoi v ravnostoronnii treugolnik %.3f; S ravna %.3f;\nP okrujnosti opisannoi okolo ravnostoronnego treugolnika %.3f; S ravna %.3f;\n", (y*3.14*sqrt(3)/3.) ,(3.14*y*y/12),(2*sqrt(3)/3*3.14*y), (3.14*y/3));
end = clock();
printf("%lf\n",(end - start) / (CLOCKS_PER_SEC));
}
}Решение задачи: «Измерить время выполнения программы»
textual
Листинг программы
else
{
...
end = clock();
printf("%lf\n",(end - start) / (CLOCKS_PER_SEC));
}
Объяснение кода листинга программы
- start - это переменная типа
clock_t, которая используется для хранения времени начала выполнения программы. - end - это также переменная типа
clock_t, которая используется для хранения времени окончания выполнения программы. - CLOCKS_PER_SEC - это константа, которая содержит количество тиков в секунду, используемых для измерения времени выполнения программы.
- printf - это функция, которая используется для вывода результата измерения времени выполнения программы на экран.
- %lf - это спецификатор формата, который используется в функции printf для вывода значения с плавающей точкой.
- (end - start) / (CLOCKS_PER_SEC) - это выражение, которое вычисляет время выполнения программы, вычитая время начала выполнения из времени окончания выполнения и деля на количество тиков в секунду.
- ... - это место, где могут быть другие действия или операции, выполняемые в программе, но которые не видны в данном коде.
- \n - это символ новой строки, который используется для перехода на новую строку при выводе результатов на экран.