frmCar.frm
上传用户:sdxhx123
上传日期:2022-08-06
资源大小:3453k
文件大小:16k
开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form frmCar 
  3.    BorderStyle     =   1  'Fixed Single
  4.    Caption         =   "背包问题简单应用"
  5.    ClientHeight    =   8865
  6.    ClientLeft      =   45
  7.    ClientTop       =   405
  8.    ClientWidth     =   9315
  9.    BeginProperty Font 
  10.       Name            =   "宋体"
  11.       Size            =   10.5
  12.       Charset         =   134
  13.       Weight          =   400
  14.       Underline       =   0   'False
  15.       Italic          =   0   'False
  16.       Strikethrough   =   0   'False
  17.    EndProperty
  18.    Icon            =   "frmCar.frx":0000
  19.    LinkTopic       =   "Form1"
  20.    MaxButton       =   0   'False
  21.    MinButton       =   0   'False
  22.    Picture         =   "frmCar.frx":030A
  23.    ScaleHeight     =   8865
  24.    ScaleWidth      =   9315
  25.    StartUpPosition =   3  '窗口缺省
  26.    Begin VB.ListBox List1 
  27.       BeginProperty Font 
  28.          Name            =   "隶书"
  29.          Size            =   15.75
  30.          Charset         =   134
  31.          Weight          =   400
  32.          Underline       =   0   'False
  33.          Italic          =   0   'False
  34.          Strikethrough   =   0   'False
  35.       EndProperty
  36.       Height          =   1950
  37.       Left            =   1800
  38.       TabIndex        =   21
  39.       Top             =   6360
  40.       Width           =   5535
  41.    End
  42.    Begin VB.TextBox Text9 
  43.       BeginProperty Font 
  44.          Name            =   "Times New Roman"
  45.          Size            =   14.25
  46.          Charset         =   0
  47.          Weight          =   400
  48.          Underline       =   0   'False
  49.          Italic          =   0   'False
  50.          Strikethrough   =   0   'False
  51.       EndProperty
  52.       Height          =   400
  53.       Left            =   4440
  54.       TabIndex        =   9
  55.       Top             =   4200
  56.       Width           =   1800
  57.    End
  58.    Begin VB.CommandButton Command2 
  59.       Caption         =   "清空数据"
  60.       Height          =   400
  61.       Left            =   5880
  62.       TabIndex        =   11
  63.       Top             =   5000
  64.       Width           =   1500
  65.    End
  66.    Begin VB.CommandButton Command1 
  67.       Caption         =   "确定/决策"
  68.       Height          =   400
  69.       Left            =   2160
  70.       TabIndex        =   10
  71.       Top             =   5000
  72.       Width           =   1500
  73.    End
  74.    Begin VB.TextBox Text8 
  75.       BeginProperty Font 
  76.          Name            =   "Times New Roman"
  77.          Size            =   14.25
  78.          Charset         =   0
  79.          Weight          =   400
  80.          Underline       =   0   'False
  81.          Italic          =   0   'False
  82.          Strikethrough   =   0   'False
  83.       EndProperty
  84.       Height          =   400
  85.       Left            =   6000
  86.       TabIndex        =   8
  87.       Top             =   3500
  88.       Width           =   1440
  89.    End
  90.    Begin VB.TextBox Text7 
  91.       BeginProperty Font 
  92.          Name            =   "Times New Roman"
  93.          Size            =   14.25
  94.          Charset         =   0
  95.          Weight          =   400
  96.          Underline       =   0   'False
  97.          Italic          =   0   'False
  98.          Strikethrough   =   0   'False
  99.       EndProperty
  100.       Height          =   400
  101.       Left            =   6000
  102.       TabIndex        =   7
  103.       Top             =   2900
  104.       Width           =   1440
  105.    End
  106.    Begin VB.TextBox Text6 
  107.       BeginProperty Font 
  108.          Name            =   "Times New Roman"
  109.          Size            =   14.25
  110.          Charset         =   0
  111.          Weight          =   400
  112.          Underline       =   0   'False
  113.          Italic          =   0   'False
  114.          Strikethrough   =   0   'False
  115.       EndProperty
  116.       Height          =   400
  117.       Left            =   6000
  118.       TabIndex        =   6
  119.       Top             =   2300
  120.       Width           =   1440
  121.    End
  122.    Begin VB.TextBox Text5 
  123.       BeginProperty Font 
  124.          Name            =   "Times New Roman"
  125.          Size            =   14.25
  126.          Charset         =   0
  127.          Weight          =   400
  128.          Underline       =   0   'False
  129.          Italic          =   0   'False
  130.          Strikethrough   =   0   'False
  131.       EndProperty
  132.       Height          =   400
  133.       Left            =   6000
  134.       TabIndex        =   5
  135.       Top             =   1680
  136.       Width           =   1440
  137.    End
  138.    Begin VB.TextBox Text4 
  139.       BeginProperty Font 
  140.          Name            =   "Times New Roman"
  141.          Size            =   14.25
  142.          Charset         =   0
  143.          Weight          =   400
  144.          Underline       =   0   'False
  145.          Italic          =   0   'False
  146.          Strikethrough   =   0   'False
  147.       EndProperty
  148.       Height          =   400
  149.       Left            =   3360
  150.       TabIndex        =   4
  151.       Top             =   3500
  152.       Width           =   1440
  153.    End
  154.    Begin VB.TextBox Text3 
  155.       BeginProperty Font 
  156.          Name            =   "Times New Roman"
  157.          Size            =   14.25
  158.          Charset         =   0
  159.          Weight          =   400
  160.          Underline       =   0   'False
  161.          Italic          =   0   'False
  162.          Strikethrough   =   0   'False
  163.       EndProperty
  164.       Height          =   400
  165.       Left            =   3360
  166.       TabIndex        =   3
  167.       Top             =   2900
  168.       Width           =   1440
  169.    End
  170.    Begin VB.TextBox Text2 
  171.       BeginProperty Font 
  172.          Name            =   "Times New Roman"
  173.          Size            =   14.25
  174.          Charset         =   0
  175.          Weight          =   400
  176.          Underline       =   0   'False
  177.          Italic          =   0   'False
  178.          Strikethrough   =   0   'False
  179.       EndProperty
  180.       Height          =   400
  181.       Left            =   3360
  182.       TabIndex        =   2
  183.       Top             =   2300
  184.       Width           =   1440
  185.    End
  186.    Begin VB.TextBox Text1 
  187.       BeginProperty Font 
  188.          Name            =   "Times New Roman"
  189.          Size            =   14.25
  190.          Charset         =   0
  191.          Weight          =   400
  192.          Underline       =   0   'False
  193.          Italic          =   0   'False
  194.          Strikethrough   =   0   'False
  195.       EndProperty
  196.       Height          =   400
  197.       Left            =   3360
  198.       TabIndex        =   1
  199.       Top             =   1700
  200.       Width           =   1440
  201.    End
  202.    Begin VB.Line Line2 
  203.       X1              =   5400
  204.       X2              =   5400
  205.       Y1              =   1560
  206.       Y2              =   3960
  207.    End
  208.    Begin VB.Line Line1 
  209.       X1              =   600
  210.       X2              =   8520
  211.       Y1              =   5640
  212.       Y2              =   5640
  213.    End
  214.    Begin VB.Label Label11 
  215.       BackStyle       =   0  'Transparent
  216.       Caption         =   "可用资金/万元:"
  217.       BeginProperty Font 
  218.          Name            =   "楷体_GB2312"
  219.          Size            =   15.75
  220.          Charset         =   134
  221.          Weight          =   700
  222.          Underline       =   0   'False
  223.          Italic          =   0   'False
  224.          Strikethrough   =   0   'False
  225.       EndProperty
  226.       Height          =   315
  227.       Left            =   1800
  228.       TabIndex        =   20
  229.       Top             =   4320
  230.       Width           =   2715
  231.    End
  232.    Begin VB.Label Label9 
  233.       BackStyle       =   0  'Transparent
  234.       Caption         =   "最佳投资决策是:"
  235.       BeginProperty Font 
  236.          Name            =   "楷体_GB2312"
  237.          Size            =   15.75
  238.          Charset         =   134
  239.          Weight          =   700
  240.          Underline       =   0   'False
  241.          Italic          =   0   'False
  242.          Strikethrough   =   0   'False
  243.       EndProperty
  244.       Height          =   375
  245.       Left            =   720
  246.       TabIndex        =   19
  247.       Top             =   5880
  248.       Width           =   2775
  249.    End
  250.    Begin VB.Label Label8 
  251.       Appearance      =   0  'Flat
  252.       BackColor       =   &H80000005&
  253.       BackStyle       =   0  'Transparent
  254.       Caption         =   "项目四:"
  255.       BeginProperty Font 
  256.          Name            =   "隶书"
  257.          Size            =   15
  258.          Charset         =   134
  259.          Weight          =   400
  260.          Underline       =   0   'False
  261.          Italic          =   0   'False
  262.          Strikethrough   =   0   'False
  263.       EndProperty
  264.       ForeColor       =   &H80000008&
  265.       Height          =   405
  266.       Left            =   1800
  267.       TabIndex        =   18
  268.       Top             =   3480
  269.       Width           =   1245
  270.    End
  271.    Begin VB.Label Label7 
  272.       Appearance      =   0  'Flat
  273.       BackColor       =   &H80000005&
  274.       BackStyle       =   0  'Transparent
  275.       Caption         =   "项目三:"
  276.       BeginProperty Font 
  277.          Name            =   "隶书"
  278.          Size            =   15
  279.          Charset         =   134
  280.          Weight          =   400
  281.          Underline       =   0   'False
  282.          Italic          =   0   'False
  283.          Strikethrough   =   0   'False
  284.       EndProperty
  285.       ForeColor       =   &H80000008&
  286.       Height          =   405
  287.       Left            =   1800
  288.       TabIndex        =   17
  289.       Top             =   2895
  290.       Width           =   1245
  291.    End
  292.    Begin VB.Label Label6 
  293.       Appearance      =   0  'Flat
  294.       BackColor       =   &H80000005&
  295.       BackStyle       =   0  'Transparent
  296.       Caption         =   "项目二:"
  297.       BeginProperty Font 
  298.          Name            =   "隶书"
  299.          Size            =   15
  300.          Charset         =   134
  301.          Weight          =   400
  302.          Underline       =   0   'False
  303.          Italic          =   0   'False
  304.          Strikethrough   =   0   'False
  305.       EndProperty
  306.       ForeColor       =   &H80000008&
  307.       Height          =   405
  308.       Left            =   1800
  309.       TabIndex        =   16
  310.       Top             =   2280
  311.       Width           =   1245
  312.    End
  313.    Begin VB.Label Label5 
  314.       Appearance      =   0  'Flat
  315.       BackColor       =   &H80000005&
  316.       BackStyle       =   0  'Transparent
  317.       Caption         =   "项目一:"
  318.       BeginProperty Font 
  319.          Name            =   "隶书"
  320.          Size            =   15
  321.          Charset         =   134
  322.          Weight          =   400
  323.          Underline       =   0   'False
  324.          Italic          =   0   'False
  325.          Strikethrough   =   0   'False
  326.       EndProperty
  327.       ForeColor       =   &H80000008&
  328.       Height          =   330
  329.       Left            =   1800
  330.       TabIndex        =   15
  331.       Top             =   1680
  332.       Width           =   1245
  333.    End
  334.    Begin VB.Label Label4 
  335.       Appearance      =   0  'Flat
  336.       BackColor       =   &H80000005&
  337.       BackStyle       =   0  'Transparent
  338.       Caption         =   "净回报额/万元"
  339.       BeginProperty Font 
  340.          Name            =   "楷体_GB2312"
  341.          Size            =   15.75
  342.          Charset         =   134
  343.          Weight          =   700
  344.          Underline       =   0   'False
  345.          Italic          =   0   'False
  346.          Strikethrough   =   0   'False
  347.       EndProperty
  348.       ForeColor       =   &H80000008&
  349.       Height          =   405
  350.       Left            =   5760
  351.       TabIndex        =   14
  352.       Top             =   1080
  353.       Width           =   2325
  354.    End
  355.    Begin VB.Label Label3 
  356.       Appearance      =   0  'Flat
  357.       BackColor       =   &H80000005&
  358.       BackStyle       =   0  'Transparent
  359.       Caption         =   "投资额/万元"
  360.       BeginProperty Font 
  361.          Name            =   "楷体_GB2312"
  362.          Size            =   15.75
  363.          Charset         =   134
  364.          Weight          =   700
  365.          Underline       =   0   'False
  366.          Italic          =   0   'False
  367.          Strikethrough   =   0   'False
  368.       EndProperty
  369.       ForeColor       =   &H80000008&
  370.       Height          =   405
  371.       Left            =   3240
  372.       TabIndex        =   13
  373.       Top             =   1080
  374.       Width           =   1965
  375.    End
  376.    Begin VB.Label Label2 
  377.       Appearance      =   0  'Flat
  378.       BackColor       =   &H80000005&
  379.       BackStyle       =   0  'Transparent
  380.       Caption         =   "项目编号"
  381.       BeginProperty Font 
  382.          Name            =   "楷体_GB2312"
  383.          Size            =   15.75
  384.          Charset         =   134
  385.          Weight          =   700
  386.          Underline       =   0   'False
  387.          Italic          =   0   'False
  388.          Strikethrough   =   0   'False
  389.       EndProperty
  390.       ForeColor       =   &H80000008&
  391.       Height          =   405
  392.       Left            =   1560
  393.       TabIndex        =   12
  394.       Top             =   1095
  395.       Width           =   1485
  396.    End
  397.    Begin VB.Label Label1 
  398.       BackStyle       =   0  'Transparent
  399.       Caption         =   "投资回报决策优化"
  400.       BeginProperty Font 
  401.          Name            =   "楷体_GB2312"
  402.          Size            =   21.75
  403.          Charset         =   134
  404.          Weight          =   700
  405.          Underline       =   0   'False
  406.          Italic          =   0   'False
  407.          Strikethrough   =   0   'False
  408.       EndProperty
  409.       Height          =   420
  410.       Left            =   2760
  411.       TabIndex        =   0
  412.       Top             =   240
  413.       Width           =   3825
  414.    End
  415. End
  416. Attribute VB_Name = "frmCar"
  417. Attribute VB_GlobalNameSpace = False
  418. Attribute VB_Creatable = False
  419. Attribute VB_PredeclaredId = True
  420. Attribute VB_Exposed = False
  421. '====================================
  422. '回溯法求解背包问题(2008.5.10)
  423. '南京邮电大学毕业设计
  424. 'www.njupt.edu.cn
  425. '模块名称:应用
  426. '====================================
  427. Option Explicit
  428.     Dim o(1 To 4), c(1 To 4) As Integer
  429.     Dim limitiw, maxv, W(1 To 4), v(1 To 4) As Single
  430. Public Function np(i As Integer, tw As Single, tv As Single)
  431.     Dim k As Integer
  432.     If tw + W(i) <= limitiw Then
  433.         c(i) = 1
  434.     If i < 4 Then
  435.         Call np(i + 1, tw + W(i), tv)
  436.     Else
  437.         For k = 1 To 4
  438.         o(k) = c(k)
  439.     Next
  440.         maxv = tv
  441.     End If
  442.         c(i) = 0
  443.     End If
  444.     If tv - v(i) > maxv Then
  445.         If i < 4 Then
  446.             Call np(i + 1, tw, tv - v(i))
  447.     Else
  448.         For k = 1 To 4
  449.         o(k) = c(k)
  450.     Next
  451.     maxv = tv - v(i)
  452.     End If
  453.     End If
  454. End Function
  455. Private Sub Command1_Click()
  456.     Dim i As Integer
  457.     Dim a, b, c, d, e, F, g, h As Integer
  458.         a = Val(Text1.Text)
  459.         b = Val(Text2.Text)
  460.         c = Val(Text3.Text)
  461.         d = Val(Text4.Text)
  462.         e = Val(Text5.Text)
  463.         F = Val(Text6.Text)
  464.         g = Val(Text7.Text)
  465.         h = Val(Text8.Text)
  466.         limitiw = Val(Text9.Text)
  467.     For i = 1 To 4
  468.         W(1) = a
  469.         v(1) = e
  470.         W(2) = b
  471.         v(2) = F
  472.         W(3) = c
  473.         v(3) = g
  474.         W(4) = d
  475.         v(4) = h
  476.         Next
  477.     Dim totv As Single
  478.         totv = 0
  479.     For i = 1 To 4
  480.         totv = totv + v(i)
  481.     Next
  482.         maxv = 0
  483.     Call np(1, 0#, totv)
  484.         List1.AddItem "被选中投资项目的编号为:"
  485.     For i = 1 To 4
  486.         If o(i) = 1 Then
  487.         List1.AddItem Str(i)
  488.      End If
  489.     Next
  490.         List1.AddItem "最大回报额是:"
  491.         List1.AddItem maxv
  492.     If a = 0 And c = 0 And e = 0 And g = 0 Then
  493.         List1.Clear
  494.         List1.AddItem "请输入项目的投资成本和回报金额!"
  495.     End If
  496.     If a > limitiw And c > limitiw And e > limitiw And g > limitiw Then
  497.         List1.Clear
  498.         List1.AddItem "目前,您需要更多的可用资金来完成投资!"
  499.     End If
  500.     If limitiw = 0 Then
  501.         List1.AddItem "请输入您的可用资金!"
  502.     End If
  503. End Sub
  504. Private Sub Command2_Click()
  505.     Text1.Text = ""
  506.     Text2.Text = ""
  507.     Text3.Text = ""
  508.     Text4.Text = ""
  509.     Text5.Text = ""
  510.     Text6.Text = ""
  511.     Text7.Text = ""
  512.     Text8.Text = ""
  513.     Text9.Text = ""
  514.     List1.Clear
  515. End Sub