types.go 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package main
  2. import (
  3. "bufio"
  4. "fmt"
  5. "os"
  6. "strconv"
  7. "strings"
  8. "unicode"
  9. )
  10. func main() {
  11. /*
  12. var big int64 = 64
  13. var little int8
  14. little = int8(big)
  15. fmt.Println(little)
  16. fmt.Printf("%T\n", big)
  17. */
  18. // foo1()
  19. // fmt.Println(adding("%^80", "hhhhh20&&&&nd"))
  20. foo2()
  21. }
  22. func convert(val int64) uint16 {
  23. return uint16(val)
  24. }
  25. func foo1() {
  26. fmt.Println([]rune("stepik"))
  27. fmt.Println(string([]byte("stepik")))
  28. a := 10.123
  29. res := int64(a)
  30. fmt.Println(res)
  31. // fmt.Println(int64(10.123))
  32. // fmt.Println(101.0 / 10)
  33. // fmt.Println(strconv.FormatBool(10 == int(float64(100/10))))
  34. // res := (strconv.FormatBool(true)) == (10 == int(float64(100/10)))
  35. // fmt.Println(res)
  36. }
  37. func adding(a, b string) int64 {
  38. ar := []rune(a)
  39. br := []rune(b)
  40. var sa, sb string
  41. for _, val := range ar {
  42. if unicode.IsDigit(val) {
  43. sa += string(val)
  44. }
  45. }
  46. for _, val := range br {
  47. if unicode.IsDigit(val) {
  48. sb += string(val)
  49. }
  50. }
  51. ia, _ := strconv.Atoi(sa)
  52. ib, _ := strconv.Atoi(sb)
  53. return int64(ia + ib)
  54. }
  55. func foo2() {
  56. scanner := bufio.NewScanner(os.Stdin)
  57. scanner.Scan()
  58. s := scanner.Text()
  59. s = strings.ReplaceAll(strings.ReplaceAll(s, " ", ""), ",", ".")
  60. ns := strings.Split(s, ";")
  61. a, _ := strconv.ParseFloat(ns[0], 64)
  62. b, _ := strconv.ParseFloat(ns[1], 64)
  63. fmt.Printf("%.4f", a/b)
  64. }