#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include <math.h>
void main()
{
double dx,a=0,b=8.815;
int j,n;
printf("chislo tochek = \n");
scanf_s("%d", & n);
dx=fabs(b-a)/(n-1);
double *x=(double*)malloc(n*sizeof(double));
double *F1=(double*)malloc(n*sizeof(double));
double *F2=(double*)malloc(n*sizeof(double));
printf("_________________________________________________________\n");
printf("|\tI|\tX\t|\tF1\t|\tF2\t|\n");
printf("|--------|--------------|---------------|---------------|\n");
for(j=0;j++-n;a+=dx)
{
x[j]=a;
F2[j]=sin(x[j])+(cos(x[j])-1);
F1[j]=sin(x[j])*cos(x[j]);
printf("|\t%d|\t%8.3f|\t%8.3f|\t%8.4f|\n",j,x[j],F1[j],F2[j]);
}
free(x),free(F1),free(F2);
printf("|________|______________|_______________|_______________|\n");
getch();
}
Другие языки программирования и технологии
Модифицировать программу таким образом,чтобы значения X, F1и F2 были представлены двумерным массивом,состоящим из 3строк
Как-то так...
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#include <locale.h>
int main() {
double * x, *f1, *f2, ** mx, d = 1000;
int row = 3, col, r, c;
size_t size = sizeof(double);
char msg[] = "\a Не удалось выделить память под ";
setlocale(LC_CTYPE, "Russian_Russia.1251");
printf(" Введите число точек: ");
scanf_s("%i", &col);
srand((unsigned)time(NULL));
if (x = (double*)malloc(col * size)) {
for (c = 0; c < col; ++c) x[c] = rand() / d;
if (f1 = (double*)malloc(col * size)) {
for (c = 0; c < col; ++c) f1[c] = rand() / d;
if (f2 = (double*)malloc(col * size)) {
for (c = 0; c < col; ++c) f2[c] = rand() / d;
if (mx = (double**)malloc(row * sizeof(double*))) {
mx[0] = x; mx[1] = f1; mx[2] = f2;
for (r = 0; r < row; ++r, printf("\n")) for (c = 0; c < col; ++c) printf(" %6.3Lf ", mx[r][c]);
for (r = 0; r < row; ++r) free(mx[r]);
free(mx);
mx = NULL;
} else {
free(f2); free(f1); free(x);
f2 = f1 = x = NULL;
printf("%sматрицу\n", msg);
}
} else {
free(f1); free(x);
f1 = x = NULL;
printf("%sмассив F2\n", msg);
}
} else {
free(x);
x = NULL;
printf("%sмассив F1\n", msg);
}
} else printf("%sмассив X\n", msg);
fflush(stdin);
getchar();
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#include <locale.h>
int main() {
double * x, *f1, *f2, ** mx, d = 1000;
int row = 3, col, r, c;
size_t size = sizeof(double);
char msg[] = "\a Не удалось выделить память под ";
setlocale(LC_CTYPE, "Russian_Russia.1251");
printf(" Введите число точек: ");
scanf_s("%i", &col);
srand((unsigned)time(NULL));
if (x = (double*)malloc(col * size)) {
for (c = 0; c < col; ++c) x[c] = rand() / d;
if (f1 = (double*)malloc(col * size)) {
for (c = 0; c < col; ++c) f1[c] = rand() / d;
if (f2 = (double*)malloc(col * size)) {
for (c = 0; c < col; ++c) f2[c] = rand() / d;
if (mx = (double**)malloc(row * sizeof(double*))) {
mx[0] = x; mx[1] = f1; mx[2] = f2;
for (r = 0; r < row; ++r, printf("\n")) for (c = 0; c < col; ++c) printf(" %6.3Lf ", mx[r][c]);
for (r = 0; r < row; ++r) free(mx[r]);
free(mx);
mx = NULL;
} else {
free(f2); free(f1); free(x);
f2 = f1 = x = NULL;
printf("%sматрицу\n", msg);
}
} else {
free(f1); free(x);
f1 = x = NULL;
printf("%sмассив F2\n", msg);
}
} else {
free(x);
x = NULL;
printf("%sмассив F1\n", msg);
}
} else printf("%sмассив X\n", msg);
fflush(stdin);
getchar();
return 0;
}
Похожие вопросы
- Модифицировать программу таким образом,чтобы значения X, F1и F2 были представлены двумерным массивом,состоящим из 3строк
- Напишите программу, которая находит в массиве количество элементов, равных заданному значению X .
- Каким образом в c++ можно передать двумерный массив в фунцкию?
- помогите с программой!!! (Си) Двумерный массив+строки
- Как задать двумерный массив на C#, чтобы значения можно было писать при запуске программы?
- Составить программы формирования двумерного массива
- помогите срочно надо Квадратные массивы тема: Двумерные массивы на языке C++
- Что такое Двумерный массив?
- дан двумерный массив С(3,4).Получите новый массив А путём увеличения всех элементов исходного массива на число С.
- Ассемблер двумерный массив