С++ ПОМОГИТЕ СРОЧНОО! Одноклеточная амёба каждые 3 часа делится на 2 клетки. Определить, сколько амёб будет через 3, 6, 9, 12, … T часов. Где T кратно 3-ём Написать программу с функцией, которая принимает время T и печатает в столбец количество амёб в зависимости от времени

Ответы

Ответ дал: Аноним
9
#include <iostream>
#include <cmath>
using namespace std;

long Amt(int *hours) {
     long p=1;
     for(int i=0;i<*hours/3;i++) p*=2;
     return(p);
}

int main() {
    setlocale(LC_ALL, "RUS");
    int i,T;
    cout<<"Введите предельное количество часов: ";
    cin>>T;
    for(i=3;i<=T;i+=3)
        {cout<<"Время, час "<<i<<", амеб: "<<Amt(&i)<<endl;}
    system("PAUSE");
}

Тестовое решение:
Введите предельное количество часов: 60
Время, час: 3, амеб: 2
Время, час: 6, амеб: 4
Время, час: 9, амеб: 8
Время, час: 12, амеб: 16
Время, час: 15, амеб: 32
Время, час: 18, амеб: 64
Время, час: 21, амеб: 128
Время, час: 24, амеб: 256
Время, час: 27, амеб: 512
Время, час: 30, амеб: 1024
Время, час: 33, амеб: 2048
Время, час: 36, амеб: 4096
Время, час: 39, амеб: 8192
Время, час: 42, амеб: 16384
Время, час: 45, амеб: 32768
Время, час: 48, амеб: 65536
Время, час: 51, амеб: 131072
Время, час: 54, амеб: 262144
Время, час: 57, амеб: 524288
Время, час: 60, амеб: 1048576
Для продолжения нажмите любую клавишу . . .



Вас заинтересует