Advertisement
Spocoman

05. Coins

Sep 22nd, 2024
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 2.46 KB | None | 0 0
  1. package main
  2.  
  3. import "fmt"
  4.  
  5. func main() {
  6.     var input float64
  7.     fmt.Scanln(&input)
  8.    
  9.     var change = int(input * 100)
  10.     var coinCount = 0
  11.  
  12.     if change >= 200 {
  13.         coinCount += change / 200
  14.         change %= 200
  15.     }
  16.     if change >= 100 {
  17.         coinCount += change / 100
  18.         change %= 100
  19.     }
  20.     if change >= 50 {
  21.         coinCount += change / 50
  22.         change %= 50
  23.     }
  24.     if change >= 20 {
  25.         coinCount += change / 20
  26.         change %= 20;
  27.     }
  28.     if change >= 10 {
  29.         coinCount += change / 10
  30.         change %= 10
  31.     }
  32.     if change >= 5 {
  33.         coinCount += change / 5
  34.         change %= 5
  35.     }
  36.     if change >= 2 {
  37.         coinCount += change / 2
  38.         change %= 2
  39.     }
  40.     if change == 1 {
  41.         coinCount++
  42.         change--
  43.     }
  44.    
  45.     fmt.Println(coinCount)
  46. }
  47.        
  48. ИЛИ:
  49.  
  50. package main
  51.  
  52. import "fmt"
  53.  
  54. func main() {
  55.     var input float64
  56.     fmt.Scanln(&input)
  57.    
  58.     var change = int(input * 100)
  59.    
  60.     for coinCount := 0; ; coinCount++ {
  61.         if change == 0 {
  62.             fmt.Println(coinCount)
  63.             break
  64.         } else if change >= 200 {
  65.             change -= 200
  66.         } else if change >= 100 {
  67.             change -= 100
  68.         } else if change >= 50 {
  69.             change -= 50
  70.         } else if change >= 20 {
  71.             change -= 20
  72.         } else if change >= 10 {
  73.             change -= 10
  74.         } else if change >= 5 {
  75.             change -= 5
  76.         } else if change >= 2 {
  77.             change -= 2
  78.         } else {
  79.             change--
  80.         }
  81.     }
  82. }
  83.  
  84. РЕШЕНИЯ С МАСИВ:
  85.  
  86. package main
  87.  
  88. import "fmt"
  89.  
  90. func main() {
  91.     var input float64
  92.     fmt.Scanln(&input)
  93.    
  94.     var change = int(input * 100)
  95.    
  96.     coins := []int{200, 100, 50, 20, 10, 5, 2, 1}
  97.    
  98.     var coinCount = 0
  99.    
  100.     for i := 0; i < len(coins); i++ {
  101.         if change >= coins[i] {
  102.             coinCount += change / coins[i]
  103.             change %= coins[i]
  104.         }
  105.     }
  106.    
  107.    fmt.Println(coinCount)
  108. }
  109.  
  110. ИЛИ:
  111.  
  112. package main
  113.  
  114. import "fmt"
  115.  
  116. func main() {
  117.     var input float64
  118.     fmt.Scanln(&input)
  119.    
  120.     var change = int(input * 100)
  121.    
  122.     coins := []int{200, 100, 50, 20, 10, 5, 2, 1}
  123.    
  124.     var coinCount = 0
  125.    
  126.     for _, coin := range coins {
  127.         if change >= coin {
  128.             coinCount += change / coin
  129.             change %= coin
  130.         }
  131.     }
  132.    
  133.    fmt.Println(coinCount)
  134. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement