03.11.2007, 22:01
общий
это ответ
Здравствуйте, Mart!
В приложении Ваша программа, которая компилируется...я исправил всего 2 ошибки...там было 3 объявления переменной r...там достаточно и одного...так как весь код выполняется в одном так сказать модуле...(Turbo C++ 3.0)
Ну и еще возможно лучше вместо: (xr[r][i]<=a[r] || xr[r][i]>=b[r])
писать: ((xr[r][i]<=a[r]) || (xr[r][i]>=b[r]))...т.е. всё условие в скобки и кажое условие в скобки(между которыми должно стоять "и","или")...
Приложение:
#include<conio.h>#include<stdio.h>void main(){float xr[5][6]={{1,2,3,4,5,7},{1,7,4,8,3,7},{3,5,2,2,1,7},{2,3,1,2,1,5},{4,5,7,8,9,5}};float a[5]={0,0,0,0,0};float b[5]={6,6,6,6,6};int N=6;int n=3;int m=2;int myr[3][6]={0};int cyr[3][6]={0};int sum_myr, myr_i;for (int i=0; i<N; i++){for (int r=0; r<n; r++){sum_myr=0;if (xr[r][i]<=a[r] || xr[r][i]>=b[r]){for (int j=n; j<(n+m); j++){if (xr[j][i]>=a[j] && xr[j][i]<=b[j]){myr_i=1;} else {myr_i=0;}sum_myr=sum_myr+myr_i;//printf("myr_i = %i\n",myr_i);}}if (sum_myr==m) {myr[r][i]=1;} else {myr[r][i]=0;}}for (r=n; r<(n+m); r++){if (xr[r][i]>=a[r] && xr[r][i]<=b[r]){cyr[r][i]=0;}else {cyr[r][i]=1;}}}for (int r=0; r<n; r++){for (int i=0; i<N; i++){printf("myr[%i][%i] = %i",r,i,myr[r][i]);}printf("\n");}for (r=n; r<(n+m); r++){for (int i=0; i<N; i++){printf("cyr[%i][%i] = %i",r,i,cyr[r][i]);}printf("\n");}}