Найти минимальное число среди чисел - VB
Формулировка задачи:
Чебурашка бежит вприпрыжку по лестнице вниз, начиная с самой верхней ступеньки до самой нижней. он иногда перепрыгивает через ступеньку, иногда через две, а иногда даже через три. а Гена перед этим на каждой ступеньке написал число в диапазоне от 1 до 1000. кроме того, в образовательных целях Гена дал задание: найти минимальное число среди чисел, написанных на ступеньках, но которые чебурашка наступал во время спуска по лестнице.
требуется написать программу , которая находит этот же минимум.
формат входных данных
первая строка входного файла содержит два числа N(1<=N<=100) и M(1<=M<=100). вторая строка содержит N целых чисел, которые гена написал на ступеньках. первое их этих чисел соответствует верхней ступеньке, а последнее нижней. третья строка содержит M целых чисел каждое из которых равно 1,2,3 или 4. первое из этих чисел означает длину первого прыжка с первой ступеньки, второе второго прыжка и т.д. Входные данные всегда корректны в том смысле , что сумма чисел во второй строке всегда равна N-1 , т.е. чебурашка начиная с первой ступеньки всегда закончит на последней. числа во всех строках разделены пробелами
формат выходных данных
выходной файл содержит целое число, которое означает минимальное значение, которое встретил чебурашка на ступеньках.
пример данных
input.txt
5 4
131 71 12 15 6
1 1 1 1
output.txt
6
Решение задачи: «Найти минимальное число среди чисел»
textual
Листинг программы
Option Explicit Private Sub Command1_Click() Dim ff As Integer, s As String, sArr, N As Integer, M As Integer Dim NumOnStep() As Integer, Jump() As Integer Dim MinNum As Integer, i As Integer, j As Integer ff = FreeFile Open App.Path & "\Input.txt" For Input As #ff Input #1, s: sArr = Split(s, " ") N = sArr(0): M = sArr(1) 'число ступенек, число прыжков Print " N = " & N & " M = " & M;: Print ReDim NumOnStep(1 To N) ReDim Jump(1 To M) Input #1, s: sArr = Split(s, " ") For i = 1 To N NumOnStep(i) = sArr(i - 1) 'числа на ступеньках Print NumOnStep(i) & ", "; Next i Print Input #1, s: sArr = Split(s, " ") For i = 1 To M Jump(i) = sArr(i - 1) 'размер прыжков Print Jump(i) & ", "; Next i Close #ff j = 1 'прыжки начинаются с первой ступеньки MinNum = NumOnStep(1) For i = 1 To M j = j + Jump(i) If NumOnStep(j) < MinNum Then MinNum = NumOnStep(j) Next i Print Print MinNum ff = FreeFile Open App.Path & "\Output.txt" For Output As #ff Print #ff, MinNum Close #ff End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д