Напишите цикл, который суммирует объекты типа Vector из предыдущего упражнения без проверки размера векторов. Почему это плохая идея?
Ссылка на предыдущее упражнение класс Vector . Ну что ж вот сам цикл, как бы я его написал:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
//cymmirovanie Vector #include <iostream> using std::cout; using std::endl; #include <cstdlib> using std::rand; using std::srand; #include <ctime> using std::time; #include "Vector.cpp" int main() { try { srand(time(0)); Vector<float> a(7); for(int i=0;i<7;i++) {a[i]=rand()%10;} a.print(); Vector<float> b(10); for(int i=0;i<10;i++) {b[i]=rand()%10;} b.print(); for(int i=0;i<10;i++) { a[i]+=b[i]; } } catch(Vector<float>::Range& a) { cout <<"Vuxod za predelu "<<endl; } return 0; } |
Несколько слов по поводу программы. Сам класс Vector вы найдете по ссылке выше. Как видим из программы если мы не будем проверять размер вектора, то у нас будет генерироваться исключение выход за пределы Range или как его еще называют out of order вроде, да я честно не сильно шарю. Ладно разобрали. Суммировать как мы видим можем только вектора одинакового размера. Так что так.
[youtube]http://www.youtube.com/watch?v=EDwb9jOVRtU[/youtube]