Зависит от того что дано. Обычно она изменяет значение какой либо переменной.
Динамическое программирование
посмотри пример : задача о рокзаке
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
short *arr = new short[n];
for (int i = 0; i < n; i++) {
cin >> arr[i];
}
int max = arr[0];
for (int i = 0; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
cout << max;
return 0;}
#include <iostream>
using namespace std;
int main()
{
int n,x,k_otr=0,k_pol=0,k_nul=0;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>x;
if(x>0)
k_pol++;
else if(x<0)
k_otr++;
else
k_nul++;
}
cout<<"k_pol="<<k_pol<<"; k_otr="<<k_otr<<"; k_nul="<<k_nul;
return 0;
}