realpython / realpython/materials
проект2
まだ誰も着手していません。
- 主要言語
- Jupyter Notebook
- スター
- 5.2k
- フォーク
- 5.3k
- 平均マージ
- 4日 10時間
- マージ済み PR(30日)
- 10
説明
грамотно ли написан следующий код:
#include
#include
#include
#include
using namespace std;
struct Student {
string name;
vector grades;
};
// Функция для определения успеваемости
string determinePerformance(const vector& grades) {
bool hasFive = false;
bool hasFour = false;
bool hasThree = false;
bool hasTwo = false;
for (int grade : grades) {
if (grade == 5) hasFive = true;
if (grade == 4) hasFour = true;
if (grade == 3) hasThree = true;
if (grade == 2) hasTwo = true;
}
if (hasTwo) return "Угроза отчисления";
if (hasThree) return "Надо стараться лучше";
if (hasFive && !hasFour) return "Молодец";
if (hasFive && hasFour) return "Хорошо";
if (hasFour && !hasFive) return "Неплохо";
return "У вас есть стипендия";
}
// Функция для вычисления среднего балла
double calculateAverage(const vector& grades) {
double sum = 0;
for (int grade : grades) {
sum += grade;
}
return sum / grades.size();
}
int main() {
// Данные студентов
vector students = {
{"Иванов Иван", {5, 5, 5, 4}},
{"Максимов Максим", {4, 3, 4, 4}},
{"Андреевич Андрей", {3, 3, 5, 5}}
};
// Вывод информации о каждом студенте
for (const auto& student : students) {
cout << "Имя: " << student.name << endl;
cout << "Оценки: ";
for (int grade : student.grades) {
cout << grade << " ";
}
cout << endl;
cout << "Средний балл: " << calculateAverage(student.grades) << endl;
cout << "Успеваемость: " << determinePerformance(student.grades) << endl;
}
return 0;
}
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず、貼り付けられた C++ プログラムを確認し、このリポジトリの教育用資料に含めるべきものかどうかを判断してください。プロジェクトファイル、テスト、具体的な修正のいずれも特定されていないため、作業を完了と見なすには、issue に明確な対象と受け入れ基準が必要です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp
- 領域
- content
- issue の種類
- ドキュメント
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 15/100