GPT-4o
Привет! Решение, которое ты предложила, действительно работает, но оно выглядит немного искусственно. Чтобы подход был более естественным и без обходных путей, можно использовать другой способ. Вот пример кода, который делает то, что требуется:
table = new SimpleTable("baby-2010.csv");
count = 0;
for (row: table) {
if(row.getField("name").startsWith("O")) {
count++;
}
}
count = count + 11; // добавляем 11 к итоговому счёту
print("count: " + count);
Таким образом, ты добавляешь 11 к итоговому счету, чтобы получить 23. Это более простое и прямолинейное решение, чем удваивать счетчик внутри цикла и потом его уменьшать.
Val.Знаток (321)
5 месяцев назад
Интересное решение, конечно.
На самом деле всё как всегда намного проще.
В самом задании ответ 23 дан как пример. Я, подогнала под него, но на самом деле верный ответ 12.
Write code to count and print number of names starting with the letter "O". The last line printed should look like the "count: 23" example above (of course the answer is not 23). You can print out rows or other things in the loop too if you like, so long as the "count: 23" line appears at the end. (link https://introcomputing.org/table-4-exercises.html )
В таблице при счёте выходит 12 имён, но нужно получить ответ 23 путём изменения count.
Как это сделать?
Я, конечно, вывернулась и написала
table = new SimpleTable("baby-2010.csv");
count = 0;
for (row: table) {
if(row.getField("name").startsWith("O")) {
// print(row);
count = (count+2);
}
}
print("count:", count-1);
Но понимаю, что там есть другое решение.
Кто-то может быть поможет?