Top.Mail.Ru
Ответы

Не могу решить задачу на golang

Задача:
Напишите функцию ConcatStringsAndInt(str1, str2 string, num int) string, которая принимает две строки и одно целое число, а затем выполняет конкатенацию строк и числа в одну строку.
Мой код:
package main

func ConcatStringsAndInt(str1, str2 string, num int) string {
str := str1 + str2
ZpNum := string(num)
ToChtoNuzhno := int(ZpNum)
return str, ToChtoNuzhno
}
Мне выдает ошибку. Покажите пожалуйста, как делать.

По дате
По рейтингу
Аватар пользователя
Гений
123
 func ConcatStringsAndInt(str1, str2 string, num int) string {
    return fmt.Sprintf("%s%s%d", str1, str2, num)
} 

func ConcatStringsAndInt(str1, str2 string, num int) string {
return fmt.Sprintf("%s%s%d", str1, str2, num)
}

или так:

func ConcatStringsAndInt(str1, str2 string, num int) string {
return str1 + str2 + fmt.Sprintf("%d", num)
}

или так:

import "strconv"

func ConcatStringsAndInt(str1, str2 string, num int) string {
return str1 + str2 + strconv.Itoa(num)
}

Но вот string(num) работать не будет.

Аватар пользователя
Ученик

Спасибо

Аватар пользователя
Мудрец
1234567891011121314
 package main 
 
import "strconv" // Добавляем пакет для конвертации числа в строку 
 
func ConcatStringsAndInt(str1, str2 string, num int) string { 
    // Конвертируем число в строку с помощью strconv.Itoa() 
    numStr := strconv.Itoa(num) 
     
    // Объединяем все строки 
    result := str1 + str2 + numStr 
     
    return result 
} 
 

string(num) - это неправильный способ конвертации числа в строку. Эта операция преобразует число в Unicode-символ.
int(ZpNum) - нельзя просто так преобразовать строку в число.
В return вы пытались вернуть две переменные, когда функция объявлена с возвратом только одной строки.



Видео по теме