КАК исправить синтаксические ошибки в проге по сложению, вычитанию, скалярному произведению век - C (СИ)
Формулировка задачи:
Листинг программы
- #include <stdio.h>
- #include <conio.h>
- #include <math.h>
- #include <locale.h>
- struct vector{
- float *x;
- int n;
- };
- vector* sum(vector *v1, vector *v2){
- int i;
- vector *v = NULL;
- if (v1->n!=v2->n){
- return v;
- }
- v=(vector*)malloc(sizeof(vector));
- create(v,v1->n);
- for (i=0;i<(v->n);i++){
- v->x[i] = (v1->x[i]) + (v2->x[i]);
- }
- return v;
- }
- vector* substraction (vector *v1, vector *v2) {
- int i;
- vector* v = NULL;
- if(v1->n!=v2->n){
- return v;
- }
- v = (vector*)malloc(sizeof(vector));
- create(v,v1->n);
- for (i=0; i<v->n; i++) {
- v->x[i] = (v1->x[i]) - (v2->x[i]);
- }
- return v;
- }
- float scal (vector *v1, vector *v2) {
- int i;
- float result;
- result = 0;
- if (v1->n!=v2->n) {
- return 0;
- }
- v = (vector*) malloc(sizeof(vector));
- create(v,v1->n);
- for(i = 0; i < v->n; i++) {
- result+ =(v1->x[i])*(v2->x[i]);
- }
- return result;
- }
- void fill(vector *v, int n){
- int i;
- for(i=0; i < n; i++){
- scanf_s("%f",&v[i].x);
- }
- }
- void create (vector *v, int n) {
- v->n = n;
- v->x = (float*)malloc(sizeof(float)*n);
- }
- void release (vector *v) {
- free(v -> x);
- v -> v = 0;
- }
- void fillr(vector *v, int n){
- int i;
- for (i=0; i<n; i++) {
- printf_s("%f",v[i].x);
- }
- }
- void main(){
- setlocale(LC_CTYPE,"russian");
- vector v1, v2;
- vector *v;
- int n;
- printf("Введите размерность вектора:");
- scanf("%d",&n);
- vector *v1=(vector*)malloc(sizeof(int)*n);
- vector *v2=(vector*)malloc(sizeof(int)*n);
- create(&v1,n);
- create(&v2,n);
- fill(&v1);
- fill(&v2);
- sum(&v1,&v2);
- fillr(&v,n);
- substraction(&v1,&v2);
- fillr(&v,n);
- scal(&v1,&v2);
- fillr(&v,n);
- release(&v1);
- release(&v2);
- release(&v);
- free(&v1);
- free(&v2);
- free(&v);
- }
Решение задачи: «КАК исправить синтаксические ошибки в проге по сложению, вычитанию, скалярному произведению век»
textual
Листинг программы
- free(&v1);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д