Регистрация
25 Окт 2013
Сообщения
85
Репутация
0
Спасибо
0
Монет
0
А) Заполните массив натуральными числами в обратном порядке, начиная со значения X, введённого с клавиатуры. Последний элемент должен быть равен X, предпоследний – X–1 и т. д. б) Заполните массив степенями числа 2 (от 21 до 2N), так чтобы элемент с индексом i был равен 2i.
 
А) Не всегда возможно. Числа могут стать и отрицательными. Будем считать, что не только натуральными, а и целыми. #include "algorithm" #include "iostream" using namespace std; int main(){ int n,x,*a; cout<<"N X: "; cin>>n>>x; a=new int[n]; generate(a,a+n,[&]()mutable{return ++x-n;}); for(int i=0;i< n;i++)cout<<a<<; cout<< endl;} Б) Условие противоречиво. По одной его части элемент с индексом 0 должен быть равен 2^0=1, по другой части 2^1=2. Сделаем по тому, что в скобках. #include "algorithm" #include "iostream" using namespace std; int main(){ int n,x=1,*a; cout<<"N: "; cin>>n; a=new int[n]; generate(a,a+n,[&]()mutable{return x*=2;}); for(int i=0;i< n;i++)cout<<a<<; cout<< endl;}
 
#include <iostream> #include <iomanip> using namespace std; int main() { cout << "x: "; size_t x; cin >> x; auto box = new unsigned[x]; for (auto i = 0U, n = x; i < x; ++i, --n) box = n; for (auto i = 0U; i < x; ++i) cout << setw(4) << box; puts(""); delete[] box; system("pause > nul"); }
 
A) using namespace std; int main() { int arr[20]; int x; cin >> x; for (int i = 19; i >= 0; i--) { arr = x; x = x - 1; } return (0); }
 
Назад
Сверху