Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CS:GO

Zmiana String'a na liczbę dwucyfrowąZmiana String'a na liczbę dwucyfrową

cs:go liczba dwucyfrowa string sourcemod

Najlepsza odpowiedź plx211, 13.02.2016 21:49

@grankee zobaczyl moj facepalm, poprawiona wersjia:

new szMiesiac[3];
FormatTime(szMiesiac, 2, "%m", GetTime());
new miesiac = StringToInt(szMiesiac) + 1;
PrintToChatAll("miesiac = %02d", miesiac == 13 ? 1 : miesiac);
Przejdź do postu


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
4 odpowiedzi w tym temacie

#1 Kuaczek

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:4
  • Imię:Kamil
  • Lokalizacja:Polska
Offline

Napisano 06.02.2016 16:09

Witam grono AMXX !

 

Posiadam pewien problem.

FormatTime(dzien, sizeof(dzien), "%d", GetTime()); // Liczba wyjściowa to przykładowo 01, 02, 03.... 11,12 ( miesiące )
Chciałbym by liczba miesięcy po dodaniu liczby jeden była o jeden większa i jest po użyciu tego:
 
new liczba = 1;
new miesiacplus = StringToInt(miesiace) + liczba; // Lecz pojawia się ona w postaci: 1,2,3...11,12


new String:wyjscie[3];
IntToString(miesiacplus, wyjscie, sizeof(wyjscie));
Chciałbym by po dodaniu wartości  (liczba) do (miesiace) liczba miała wartość w stringu 01,02,03..... 11,12 < = liczba dwucyfrowa
Próbowałem dodać do każdej wyjściowej liczby 0 ale to jest kiepski pomysł // (01,02.03...010,011,012)
 
 
Dziękuje za wszelką pomoc.
 

 


  • +
  • -
  • 0

#2 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 08.02.2016 21:50

Piszesz o miesiącach, a formatujesz dzień...

Według mnie powinno to działać:

new szMiesiac[2];
FormatTime(szMiesiac, 2, "%m", GetTime());
new miesiac=StringToInt(szMiesiac)
(miesiac==12)?(miesiac=1):(miesiac++)//tak aby po grudniu (12) następował styczen(1)
IntToString(miesiac,szMiesiac,2)
if(miesiac<10)
{
szMiesiac[1]=szMiesiac[0]
szMiesiac[0]='0'//ew w razie błędu zastąp apostrofy cudzysłowami czyli daj "0"
}

i teraz masz w zmiennej szMiesiac juz o 1 wiekszy


  • +
  • -
  • 0

#3 plx211

    Wszechpomocny

  • Użytkownik

Reputacja: 231
Wszechwidzący

  • Postów:397
  • Lokalizacja:Polska
Offline

Napisano 13.02.2016 20:58

a moze zamiac rzutowac na string, uzyjesz odpowiedniej flagi i wyswietlicz jako integer?

tzn.

new liczba = 1;
new miesiacplus = StringToInt(miesiace) + liczba;
PrintToChatAll("miesiacplus = %02d", miesiacplus);

p.s.

Wiecej o tych flagach przeczytasz tutaj:

https://wiki.alliedm...nced_Formatting

http://www.cplusplus.../cstdio/printf/

https://pl.wikibooks.../C/printf#Flagi

 

@edit

kod oczywiscie nie testowany :)


Użytkownik plx211 edytował ten post 13.02.2016 21:02

  • +
  • -
  • 0

#4 plx211

    Wszechpomocny

  • Użytkownik

Reputacja: 231
Wszechwidzący

  • Postów:397
  • Lokalizacja:Polska
Offline

Napisano 13.02.2016 21:49   Najlepsza odpowiedź

@grankee zobaczyl moj facepalm, poprawiona wersjia:

new szMiesiac[3];
FormatTime(szMiesiac, 2, "%m", GetTime());
new miesiac = StringToInt(szMiesiac) + 1;
PrintToChatAll("miesiac = %02d", miesiac == 13 ? 1 : miesiac);

  • +
  • -
  • 0

#5 Kuaczek

    Nowy

  • Autor tematu
  • Nowy

Reputacja: 0
Nowy

  • Postów:4
  • Imię:Kamil
  • Lokalizacja:Polska
Offline

Napisano 17.02.2016 15:49

Dziękuje pięknie, byłem blisko celu :) z Wami mi się udało.


  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: cs:go, liczba, dwucyfrowa, string, sourcemod

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych