stendpost
?>

C/c++. преобразовать массив так, чтобы сначала шли нулевые элементы, а затем все остальные.

Информатика

Ответы

Natalya1895

#include <iostream>

using namespace std;

int main()

{

int mas[20] = {};

for (int jjj = 0; jjj < 20; jjj++)

{

cin >> mas[jjj];

if (cin.fail())

{

cin.clear();

cin.ignore(32000, '\n');

break;

};

};

cout<<"\nДо : ";

for(int jjj:mas)cout<<jjj<<" ";

for (int kkk{0} ,jjj{0}; jjj <20; jjj++)

if (mas[jjj] == 0)

swap(mas[kkk++], mas[jjj]);

cout<<"\nПосле : ";

for(int jjj:mas)cout<<jjj<<" ";

}

gusinica23
Вызов G(5)+F(5)

Вход G(5), вызов F(4)+2G(4)
Вход F(4), вызов 2F(3)-G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(4), вызов F(3)+2G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход F(5), вызов 2F(4)-G(4)
Вход F(4), вызов 2F(3)-G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(4), вызов F(3)+2G(3)
Вход F(3), вызов 2F(2)-G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(3), вызов F(2)+2G(2)
Вход F(2), вызов 2F(1)-G(1)
Вход F(1), результат 1
Вход G(1), результат 1
Вход G(2), вызов F(1)+2G(1)
Вход F(1), результат 1
Вход G(1), результат 1

-14
vickuznetsova8677
Задание не очень понял , а если точнее "отобразить в виде дерева" ,но вроде так:
-> означает что от этого слова идут 2 стрелки и в конце стрелок слово.

магнитный диск -> sport -> sky -> russia.txt

магнитный диск -> sport -> skate -> getmany.txt

= = = =
магнитный диск -> computer -> bm -> info -> pentium.txt

магнитный диск -> computer -> info -> ibm.txt

объясняю: от магнитного диска идёт 2 ветви(это же дерево) 1.sport и 2.computer

1.от ветки sport идёт ещё 2 ветки sky и skate
от ветки sky идёт "плод" - russia.txt
от ветки skate идёт "плод" - germany.txt

2.от ветки computer идёт 2 ветки - 1.bm и 2.info
от ветки bm идёт info ,а от info "плод" - pentium.txt
от ветки info идёт "плод" - ibm.txt

получается вот такое дерево)

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

C/c++. преобразовать массив так, чтобы сначала шли нулевые элементы, а затем все остальные.
Ваше имя (никнейм)*
Email*
Комментарий*