Моя задача: на каждом языке есть n наиболее используемых слов. Мальчик после дня отправляется в Швецию. Желая понять шведский язык, в первый день он узнает z слов и каждый следующий день k слов больше, чем за день до этого. Напишите программу, которая проверит, сможет ли мальчик успешно изучить n слов в течение дня.Работа с файлами & FOR loop
Предположим, что ему необходимо изучить 100 слов. У него 20 дней. В первый день он выучил 5 слов. На следующий день он узнал 1 слово больше, чем за день до этого.
В этом случае ответа должен быть: да (он успешно будет изучать его в течение 20 дней), и (в течение 11 дней он будет учиться 100 слов).
У меня есть код, написанный.
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
int main()
{
int n, d=0, k, z;
ofstream fr("Rezults.txt");
ifstream fd("Data.txt");
fd>>n>>d>>z>>k;
int learned_words = 0;
for(int i=0; i<d; i++){
learned_words += z;
z = z+k;
}
if(n<=learned_words) {
fr<<"Yes"<<endl;
}
else
{
fr<<"No"<<endl;
}
z=z-d; d=0;
for(int m=0; m<=n; m+=z, z+=k, d++) {}
cout << "You need " << d << " days to learn " << n << " words";
fd.close();
fr<<d;
fr.close();
return 0;
}
Почему вы спрашиваете, а не просто пытаетесь запустить ваш код? –
Вы имеете в виду, можно ли считать, а не вычислять 'n + 1-z'? Да, создайте новую переменную 'count' и выполните' for (i = z, count = 0; i <= n; i = i + 1, count ++) '. Вы обращались с какой-либо мыслью к проблеме перед публикацией? – mah
Я не понимаю, о чем вы просите, извините. Что вы подразумеваете под «count numbers»? – Mat