Записать отобранные данные в массив - C (СИ)
Формулировка задачи:
Есть программа, которая выводит комбинации, считает сумму выпавших чисел и если сумма удовл. условию помечает комбинацию ###
Вопрос - а как эти нужные комбинации поместить в массив ну например Y[n]?
Код:
#include <stdio.h> main (){ int n=3,i,j=0,m=6,X[n],sum=0,S=5,count=0,count2=0; for(i=0; i<n; i++) X[i] = 1; // заполняю единицами while(1) { for(i=0; i<n; i++) {printf(" %d", X[i]);sum=sum+X[i];} printf(" summa=%d", sum);count2++; if (sum==S) {count++; printf(" ###");} sum=0; printf("\n"); for(i=0; i<n; i++) { X[i]++; if (X[i] <= m) break; X[i] = 1; } if (i==n) break; } printf("numbers of combination have summ=%d =%d\n",S, count); printf("numbers of combination %d",count2); getchar (); }
Решение задачи: «Записать отобранные данные в массив»
textual
Листинг программы
#include <stdio.h> main (){ int Y_new[10]; int Y[100][10]; int Y_counter=0,t; int n=4,i,j=0,m=6,X[n],sum=0,S=5,count=0,count2=0; for(i=0; i<n; i++) X[i] = 1; // заполняю единицами while(1) { for(i=0; i<n; i++) {printf(" %d", X[i]);sum=sum+X[i];} printf(" summa=%d", sum);count2++; if (sum==S) {count++; printf(" ###"); for(t=0; t<n; t++) Y[Y_counter][t]=X[t]; Y_counter++; } sum=0; printf("\n"); for(i=0; i<n; i++) { X[i]++; if (X[i] <= m) break; X[i] = 1; } if (i==n) break; } printf("numbers of combination have summ=%d =%d\n",S, count); printf("numbers of combination %d",count2); for (i = 0; i < Y_counter; i++) { printf("+++"); for(t=0; t<n; t++) printf("%d ",Y[i][t]); } getchar (); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д