#include <iostream>#include <ctime>//Бібліотека для рандомуusing namespace std;int main(){ int array[10];//Масив int Max_Num=0,Min_Num=0;// Мінімальне і Максимальне числа bool Positive_or_negative=0;//Число додатнє чи відємне srand(time(NULL));//Рандом.Кожний раз інший. for(int i=0;i<10;++i) { Positive_or_negative=rand()%2; if(Positive_or_negative==false)//якщо Positive_or_negative==0 { array[i]=-(rand()%10);//Рандом від -10...0 } else { array[i]=rand()%10;//Рандом від 0...10 } if(array[i]>Max_Num)//Пошук макс. числа { Max_Num=array[i]; } if(array[i]<Min_Num)//Пошук Мін. числа { Min_Num=array[i]; } cout<<array[i]<<" "; } cout<<endl<<"Max. number is:"<<Max_Num<<endl;//Вивід максимально числа cout<<"Min. number is:"<<Min_Num<<endl;//Вивід мінімально числа system("pause>>void");//закінчення программи.}
Наибольшее возможное значение выражения (F+O+X+E)*(F*R*D*D) = 236196. Прилагаю небольшой скрипт на Python. Простенькая задачка на корректную организацию перебора с использованием вложенных циклов:
max_num = 0 for f in xrange(10): for o in xrange(10): for x in xrange(10): for e in xrange(10): for r in xrange(10): for d in xrange(10): b = f*r*d*d if b == 0: continue num = (f + o + x + e) * b if num > max_num: max_num = num
print "Maximum value of (F+O+X+E)*(F*R*D*D) is: %i" % max_num
Решение можно получить гораздо проще, если догадаться, что наибольшее значение выражения достигается, когда сумма F+O+X+E и произведение F*R*D*D являются максимальными. Это одновременно происходит, когда все цифры равны 9: (9+9+9+9)*9*9*9*9 = 236196