Ну, если я правильно понял суть задания, то:
osh - кол-во ошибок, oc - осценка. Соль программы в том, что учитель вбивает количество ошибок, и ему выдается оценка, которую надо поставить. Что-бы программа работала, создашеь кнопку на форме, жмешь по ней два раза в VB, появится окно для ввода кода программы, туда пишешь вот эту команду: Ocenka()
Потом после этой команды находишь строчку End Sub, она будет перед End Class, и копируешь вот этот код:
Sub Ocenka()
Dim osh, oc As Byte
osh = InputBox("Введите количество ошибок")
If osh = 0 Then
oc = 5
ElseIf osh = 1 Then
oc = 4
ElseIf osh = 2 Then
oc = 3
ElseIf osh >= 3 Then
oc = 2
End If
MsgBox("Оценка ученика - " & oc)
End Sub
Ну впринципе все) Скрин програмки прилагается)
1 sm('Игорь',18,189).
2 sm('Роман',17,182).
3 sm('Антон',20,191).
4 sm('Виктор',21,185).
5 sm('Николай',16,193).
6 % а) выбрать всех спортсменов выше 184 (включительно), но не выше 190;
7 % ?- findall( Name, (sm(Name, Age, Height), Height >= 184, Height < 190), Xs ).
8 % б) выбрать спортсменов моложе 20 лет, но не моложе 18 (включительно);
9 % ?- findall( Name, (sm(Name, Age, Height), Age < 20, Age >= 18), Xs ).
10 % в) выбрать всех спортсменов с ростом не ниже 186 и не старше 19 лет (включительно).
11 % ?- findall( Name, (sm(Name, Age, Height), Height > 186, Age =< 19), Xs ).
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
double Ax, Bx, Cx;
Scanner sc = new Scanner(System.in);
try {
System.out.println("Waiting for input A, B and C...");
Ax = sc.nextDouble();
Bx = sc.nextDouble();
Cx = sc.nextDouble();
if (!(Cx > Math.min(Ax, Bx) && Cx < Math.max(Ax, Bx))) {
System.out.println("Неверные входные данные.");
return;
}
double AC = Math.abs(Cx - Ax);
double BC = Math.abs(Cx - Bx);
System.out.println("AC = " + AC);
System.out.println("BC = " + BC);
System.out.println("AC * BC = " + AC * BC);
} catch (RuntimeException e) {
System.out.println("Неверные входные данные.");
}
}
}
Проблемы, вопросы или предложения по работе программы в комментарии.