Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 24.08.2018
Сообщений: 60
1

Введенные данные структуры не проходят проверку в конце (if (Sum/7 >= new_midsumma) и просто все эти данные выводят

05.09.2018, 00:05. Показов 461. Ответов 1
Метки нет (Все метки)

Задание: Описать структуру с именем «Студенты», содержащую следующие поля: фамилия и инициалы; номер группы; успеваемость (массив из 7 элементов).
Написать программу, выполняющую следующие действия:
- ввод с клавиатуры данных в массив, состоящий из трех структур типа Студенты;
- вывод на экран фамилий и номеров групп для всех студентов, у которых средний балл больше 4,0 (если таких студентов нет, вывести соответствующее сообщение).



C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp73
{
class Program
{
struct Student
{
public char[] ФИО;
public char[] группа;
public int[] marks; //успеваемость
 
public void StudentConstr()
 
{
 
this.marks = new int[7];
this.ФИО = new char[12];
this.группа = new char[3];
}
 
}
 
static void Main(string[] args)
 
{
int Sum = 0;
 
Console.Write("Введите количество студентов: ");
uint n = UInt32.Parse(Console.ReadLine());
Student[] students = new Student[n];
 
for (int i = 0; i < n; i++)
{
students[i].StudentConstr();
Console.Write("\nФамилия и инициалы: ");
students[i].ФИО = Console.ReadLine().ToCharArray();
Console.Write("Номер группы: ");
students[i].группа = Console.ReadLine().ToCharArray();
 
int[] marks = new int[7];
 
Console.WriteLine("Введите оценки: ");
for (int s = 0; s < 7; s++)
{
 
Console.Write("{0}: ", s + 1);
marks[s] = int.Parse(Console.ReadLine());
}
 
Sum = 0;
 
for (int s = 0; s < 7; s++)
{
Sum += marks[s];
 
}
Console.WriteLine("Средняя сумма = {0: 0.##}", (double)Sum / 7);
 
}
 
double new_midsumma;
Console.Write("\nПоиск по средней оценке: ");
new_midsumma = Convert.ToDouble(Console.ReadLine());
 
bool f = false; //флаг нахождения студента
for (int i = 0; i < n; i++)/*перебор записей массива*/
 
{
if ((double)Sum/7 >= new_midsumma)
{
//Console.WriteLine("Студент {0},группа {2}", students[i].группа, students[i].ФИО);
Console.WriteLine("Студент: {0}, из группы: {1} ", new String( students[i].ФИО), new String(students[i].группа));
 
f = true;
}
}
if (!f) //совпадений не найдено
 
{ Console.WriteLine("Поезд по запросу не найден!"); }
 
Console.ReadKey();
 
}
}
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.09.2018, 00:05
Ответы с готовыми решениями:

Данные не заносится в базу данных, несмотря на то, что данные проверку успешно проходят.
Здравствуйте, у меня есть регистрация вот код &lt;?php if(!defined(&quot;access&quot;)){die();} Class...

При выполнения функции не проходят все данные по I2C
Приятной ночи, специалисты вот текст задачи: В scheduler'е крутятся 2 таска 1. Один постоянно...

Функция, что записывает в текстовый файл данные структуры, введенные с клавиатуры
Помогите сделать программу. Написать функцию, что записывает в текстовый файл данные структуры,...

Сохранить все введенные данные в программе с возможностью последующей загрузки
Здравствуйте, читая литературу, возник у меня вопрос... К примеру я создаю класс который описывает...

1
613 / 506 / 316
Регистрация: 20.05.2015
Сообщений: 1,422
05.09.2018, 02:34 2
Цитата Сообщение от Аня_Самойлова Посмотреть сообщение
и просто все эти данные выводят
Если средний балл последнего студента будет ниже необходимого ваша программа не выведет никого.
Ваша проблема в том что вы никак не вычисляете сумму в последнем цикле, а просто используете старые значения этой переменной.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.09.2018, 02:34

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Не все тесты Printing.NET проходят проверку
В чём проблема? Почему не всё проходит тест?

Как извлечь данные из сервера Parse, чтобы эти данные были видны всем?
У меня есть активити, где есть строка, куда вводишь данные и они отправляются на сервер, и они...

Некоторые ячейки StringGrid закрашены и содержат в себе числовые данные, но эти данные не видно!
В общем, есть StringGrid, который практически соответствует картинке (прикреплена). По отдельности...

Данные не проходят валидацию
Значит так, проблема такова. Пишу web приложение для работы с БД(MS SQL server), программа должна...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.