Нужно написать программу. дана линейная функция y=kx+b . k и b вводятся с клавиатуры. рассмотреть все где числа могут быть отрицательными и положительными, посчитать. составной условный оператор.
На Visual Basic. Делаешь 4 текстовых поля под a, b, x, y Dim a As Double, b As Double, x As Double, y As Double a = Text1.Text: b= Text2.Text: x = Text3. Text y = a*x + b Text4.Text = y End Sub Вот и все. Независимо от положительных и отрицательных а и b, получаешь ответ. Если же надо просчитать при разных х от х1 до х2, то 5 полей Dim a As Double, b As Double , i As Integer Dim x1 As Integer, x2 As Integer, y As Double Text5.MultiLine = True a = Text1.Text: b= Text2.Text: x1 = Text3. Text, x2 = Text4.Text Text5.Text = "" For i = x1 To x2 y = a*i + b Text5.Text = Text5.Text & Str(y) & vbCrLf Next i End Sub
Uses crt; var i,j,k,n,max:integer; a:array[1..100] of integer; procedure rmassr; begin for i:=1 to n do a[i]:=random(10); end; procedure rmassy; begin for i:=1 to n do readln(a[i]); end; procedure maxe; begin max:=a[1]; for i:=2 to n do begin if a[i] > max then max:=a[i]; end; writeln('max element = ', max); end; procedure wmass; begin for i:=1 to n do write(a[i],' '); writeln; end; begin clrscr; randomize; write('Длина массива'); readln(n); write('1-random; 2- в ручную '); readln(k); if k=1 then rmassr() else rmassy(); wmass(); maxe(); readln end.
Вообще то, это задача чисто математическая. Пусть есть трехзначное число abc. По условию:
abc + abc
bca Понятно, что максимальным число будет, если сложение в двух младших разрядах идет через перенос -> получим систему уравнений: 2c = a +16 2b +1 = c + 16 2a + 1 = b равносильная ей система 2с = a + 16 c = 2b - 15 b = 2a + 1 подставляем третье во второе, получаем первые два уравнения 2с = a + 16 c = 4a - 13 из этих двух уравнений -> 7a = 42 -> a = 6 -> из третьего уравнения b = 13 13 = D(16), из первого уравнения с = 22/2 = 11(10) = B(16) -> abc(16) = 6DB(16) = 1755(10), DB6(16) = 3510(10) -> 2abc = bca
Dim a As Double, b As Double, x As Double, y As Double
a = Text1.Text: b= Text2.Text: x = Text3. Text
y = a*x + b
Text4.Text = y
End Sub
Вот и все.
Независимо от положительных и отрицательных а и b, получаешь ответ.
Если же надо просчитать при разных х от х1 до х2, то 5 полей
Dim a As Double, b As Double , i As Integer
Dim x1 As Integer, x2 As Integer, y As Double
Text5.MultiLine = True
a = Text1.Text: b= Text2.Text: x1 = Text3. Text, x2 = Text4.Text
Text5.Text = ""
For i = x1 To x2
y = a*i + b
Text5.Text = Text5.Text & Str(y) & vbCrLf
Next i
End Sub