Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
4 / 1 / 1
Регистрация: 27.09.2018
Сообщений: 32

Классы

23.09.2019, 21:10. Показов 1253. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста перевести код с C # на Java
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp1
{
    class Program
    {
        enum Specialty { Computer_Science, System_analysis, Software_engineering };
        static string[] specialty_str = { "Computer Science", "System analysis", "Software engineering" };
        struct Student
        {
            public string surname;
            public int course;
            public Specialty specialty;
            public int points_physics;
            public int points_maths;
            public int points_cs;
        }
        static void Create(Student[] s)
        {
            int specialty;
            for (int i = 0; i < s.Length; i++)
            {
                Console.WriteLine("Student № {0}:", i + 1);
                Console.Write("  Surname: ");
                s[i].surname = Console.ReadLine();
                Console.Write("  Course: ");
                s[i].course = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("  Specialty:");
                Console.WriteLine("    0. Computer Science");
                Console.WriteLine("    1. System analysis");
                Console.WriteLine("    2. Software engineering");
                specialty = Convert.ToInt32(Console.ReadLine());
                s[i].specialty = (Specialty)specialty;
                Console.Write("  Physics: ");
                s[i].points_physics = Convert.ToInt32(Console.ReadLine());
                Console.Write("  Maths: ");
                s[i].points_maths = Convert.ToInt32(Console.ReadLine());
                Console.Write("  CS: ");
                s[i].points_cs = Convert.ToInt32(Console.ReadLine());
            }
        }
        static void Print(Student[] s)
        {
            Console.WriteLine("| № | Surname | Course |     Specialty      | Physics | Math | CS |");
            for (int i = 0; i < s.Length; i++)
            {
                Console.WriteLine("|{0,3}|{1,9}|{2,8}|{3,20}|{4,9}|{5,6}|{6,4}|", i + 1, s[i].surname, s[i].course, specialty_str[(int)s[i].specialty], s[i].points_physics, s[i].points_maths, s[i].points_cs);
            }
        }
        static double Top(Student[] s)
        {
            int count = 0;
            for (int i = 0; i < s.Length; i++)
            {
                if (s[i].points_maths == 5 && s[i].points_physics == 5 && s[i].points_cs == 5)
                {
                    count++;
                }
            }
            return (double)count / s.Length * 100;
        }
        static void Physics(Student[] s)
        {
            for (int i = 0; i < s.Length; i++)
            {
                if (s[i].points_physics == 5 )
                {
                    Console.WriteLine(s[i].surname);
                }
            }
        }
 
        static void Main(string[] args)
        {
            int N;
            Console.Write("Enter the number of students: ");
            N = Convert.ToInt32(Console.ReadLine());
            Student[] s = new Student[N];
            int k;
            do
            {
                Console.WriteLine();
                Console.WriteLine("Select an action:");
                Console.WriteLine("[1] - Add student;");
                Console.WriteLine("[2] - Print information;");
                Console.WriteLine("[3] - Percentage of the best students;");
                Console.WriteLine("[4] - Students who received a grade of 5 in physics;");
                Console.WriteLine("[0] - Exit.");
                Console.WriteLine();
                Console.Write("Enter a value: ");
                k = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine();
                switch (k)
                {
                    case 1: Create(s); break;
                    case 2: Print(s); break;
                    case 3: Console.WriteLine("Percentage of the best students - {0:0}%", Top(s)); break; 
                    case 4: Console.WriteLine("Students who received a grade of 5 in physics: "); Physics(s); break;
                    case 0: break;
                    default: Console.WriteLine("You have entered an incorrect value! Number should be the number of the selected menu item."); break;
                }
            } while (k != 0);
        }
    }
}
знаю что вместо структуры надо использовать классы, однако мой код на Java все равно получается не рабочим
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.09.2019, 21:10
Ответы с готовыми решениями:

Вложенные классы и статические вложенные классы - нужен пример
Добрый вечер, форумчане! :) Поделитесь примерами практических задач, при решении которых полезно или даже необходимо использовать...

Классы
что означают эти стрелочки в классах? и как их понимать. java.lang.Object ↳ android.content.Context ...

Классы
public void getFood(int time, int food, int drink, String korm) { if(time == this.setter.getEatTime1()) { ...

3
 Аватар для vvm28
771 / 539 / 67
Регистрация: 22.12.2013
Сообщений: 2,498
Записей в блоге: 26
24.09.2019, 20:22
Цитата Сообщение от will123456 Посмотреть сообщение
однако мой код на Java все равно получается не рабочим
Напишите цель - что должна делать программа?
Покажите, что у вас получилось на java.
И что не получилось. Дело в том, что в этой ветке не все знают С#. Но если вы опишите назначение вашей программы,
что она должна делать, как выводить, то может быть её написать на раз два три без всяких C# и даже лучше.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,780
24.09.2019, 20:42
vvm28,
Дело в том, что в этой ветке не все знают С#.
В контексте приведённого кода: что там знать-то?
0
66 / 43 / 24
Регистрация: 18.08.2019
Сообщений: 129
25.09.2019, 14:10
Лучший ответ Сообщение было отмечено will123456 как решение

Решение

Если по простому - то так:

Java
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
import java.util.Scanner;
 
public class Task_0021 {
 
    public static Student[] s;
    public static Scanner scan;
    public enum Specialty {
        Computer_Science("Computer Science"), 
        System_analysis("System analysis"), 
        Software_engineering("Software engineering");
                      
        private final String value;
 
        Specialty(String value) {
            this.value = value;
        }
    
        public String getValue() {
        return value;
        }
 
    };
    
    public static void main(String[] args) {
        scan = new Scanner(System.in);
        System.out.print("Enter the number of students: ");
        int n = scan.nextInt();
        s = new Student[n];
        int k;
        do {
            System.out.println("");
            System.out.println("Select an action:");
            System.out.println("[1] - Add student;");
            System.out.println("[2] - Print information;");
            System.out.println("[3] - Percentage of the best students;");
            System.out.println("[4] - Students who received a grade of 5 in physics;");
            System.out.println("[0] - Exit.");
            System.out.println("");
            System.out.println("Enter a value: ");
            k = scan.nextInt();
            System.out.println("");
            switch (k) {
                case 1: studentsCreate(s); break;
                case 2: studentsPrint(s); break;
                case 3: System.out.printf("Percentage of the best students - %6.2f", studentsTop(s)); break; 
                case 4: System.out.println("Students who received a grade of 5 in physics: "); studentsPhysics(s); break;
                case 0: break;
                default: System.out.println("You have entered an incorrect value! Number should be the number of the selected menu item."); break;
            }
        } while (k != 0);
    }
 
    private static void studentsCreate(Student[] s) {
        int specialty;
        for (int i = 0; i < s.length; i++) {
            s[i] = new Student();
            System.out.printf("Student № %3d:\n", i + 1);
            System.out.print("  Surname: ");
            scan.nextLine();
            s[i].setSurname(scan.nextLine());
            System.out.print("  Course: ");
            s[i].setCourse(scan.nextInt());
            System.out.println("  Specialty:");
            System.out.println("    0. Computer Science");
            System.out.println("    1. System analysis");
            System.out.println("    2. Software engineering");
            specialty = (scan.nextInt());
            switch (specialty) {
                case 0: s[i].setSpecialty(Specialty.Computer_Science); break;
                case 1: s[i].setSpecialty(Specialty.System_analysis); break;
                case 2: s[i].setSpecialty(Specialty.Software_engineering); break;
            }
            System.out.print("  Physics: ");
            s[i].setPoints_physics(scan.nextInt());
            System.out.print("  Maths: ");
            s[i].setPoints_maths(scan.nextInt());
            System.out.print("  CS: ");
            s[i].setPoints_cs(scan.nextInt());
        }
    }
    
    private static void studentsPrint(Student[] s) {
        System.out.println("| № | Surname | Course |     Specialty      | Physics | Math | CS |");
        for (int i = 0; i < s.length; i++) {
            System.out.printf("|%3d|%9s|%8d|%20s|%9d|%6d|%4d|", 
                    i + 1, s[i].getSurname(), s[i].getCourse(), s[i].getSpecialty().value, 
                    s[i].getPoints_physics(), s[i].getPoints_maths(), s[i].getPoints_cs());
        }
    }
 
    private static double studentsTop(Student[] s) {
        int count = 0;
        for (Student item : s) {
            if (item.getPoints_maths() == 5 && item.getPoints_physics() == 5 && item.getPoints_cs() == 5) {
                count++;
            }
        }
        return (double) count / s.length * 100;
    }
 
    private static void studentsPhysics(Student[] s) {
        for (Student item : s) {
            if (item.getPoints_physics() == 5) {
                System.out.println(item.getSurname());
            }
        }
    }
 
}   
 
class Student {
    private String surname;
    private int course;
    private Task_0021.Specialty specialty;
    private int points_physics;
    private int points_maths;
    private int points_cs;
 
    public String getSurname() {
        return surname;
    }
 
    public void setSurname(String surname) {
        this.surname = surname;
    }
 
    public int getCourse() {
        return course;
    }
 
    public void setCourse(int course) {
        this.course = course;
    }
 
    public Task_0021.Specialty getSpecialty() {
        return specialty;
    }
 
    public void setSpecialty(Task_0021.Specialty specialty) {
        this.specialty = specialty;
    }
 
    public int getPoints_physics() {
        return points_physics;
    }
 
    public void setPoints_physics(int points_physics) {
        this.points_physics = points_physics;
    }
 
    public int getPoints_maths() {
        return points_maths;
    }
 
    public void setPoints_maths(int points_maths) {
        this.points_maths = points_maths;
    }
 
    public int getPoints_cs() {
        return points_cs;
    }
 
    public void setPoints_cs(int points_cs) {
        this.points_cs = points_cs;
    }
 
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.09.2019, 14:10
Помогаю со студенческими работами здесь

Классы
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package laba2_var1; import...

Классы наследования
разработать приложение, которое дает пользователю функциональность калькулятора, и имеет два режима работы: «обычный» и «инженерный». В...

Абстрактные классы
Всем привет! Изучаю абстрактные классы и решаю следующую задачу: Создайте абстрактный класс AbstractHandler. В теле класса создать...

Классы в пакете
Здравствуйте! У меня следующая проблема: Создал в пакете p1 несколько классов: Foundation.java: package p1; class...

Классы в java
Есть класс &quot;Покупатель супермаркета&quot; с полями: • количество покупок в различных отделах супермаркета, • стоимость покупок в различных...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru