Dzięki @Min0s, ale ten tekst idzie od góry na dół a nie tak jak ja bym wolał.
Wiesz co trzeba by tu zmienić aby tak było?
BigZ25 napisał(a):
Dzięki @Min0s, ale ten tekst idzie od góry na dół a nie tak jak ja bym wolał.
Wiesz co trzeba by tu zmienić aby tak było?
Tak główkowałem i przypomniałem sobie o stringach, rozwiązanie okazało się takie proste :D.
#include <iostream>
#include <windows.h>
#include <cstdlib>
#include <string>
int main()
{
std::string napis="\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\tNapis koncowy";
for (int i=0; i<25; i++)
{
std::string napis2(napis, i+1, 70-i);
std::cout << napis2 << std::endl;
_sleep(400);
system("cls");
}
return 0;
}
@Min0s, to samo tylko bez przekombinowań:
#include <iostream>
#include <windows.h>
int main()
{
const char napis[]="\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \t\t\t\tNapis koncowy";
for (int i=0;napis[i]!='\t';++i)
{
std::cout<<(napis+i)<<std::endl;
_sleep(400);
system("cls");
}
return 0;
}
Wszystko super, ale jak zrobić gdy mamy więcej zdań (jedno pod drugim). Przecież podnoszenie każdego zdania osobno nie ma sensu
BigZ25 napisał(a):
Wszystko super, ale jak zrobić gdy mamy więcej zdań (jedno pod drugim). Przecież podnoszenie każdego zdania osobno nie ma sensu
#include <iostream>
#include <windows.h>
#include <cstdlib>
#include <string>
int main()
{
std::string napis="\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\tNapis koncowy\n\t\t\t\tNapis koncowy 2\n\t\t\t\tNapis koncowy 3\n\t\t\t\tNapis koncowy 4";
for (int i=0; i<25; i++)
{
std::string napis2(napis, i+1, (napis.length()-i));
std::cout << napis2 << std::endl;
_sleep(400);
system("cls");
}
return 0;
}
\n Powoduje przejście do nowej linii
a tak z ciekawości do czego służy \t?
Wyświetla znak "tab".
A jeśli chodzi o wątek, może mnie coś mija, ale dlaczego nie po prostu:
int main() {
std::string lines[] = {
"linia 1", "", "", // każdy napis w tablicy to jedna linia, puste napisy dla pustych linii
"linia 2", "", "",
"linia 3", "", "", "",
"linia 4", "", "", "",
"THE END", "", "", "", "", "", "", ""
};
int line_ct = sizeof(lines)/sizeof(*lines);
// 40 - ilość wierszy w konsoli, w teorii może być wyższa więc lepiej by to było pobrać skądś
// upewniamy sie że jesteśmy na dole konsoli - przy okazji powoduje to że system() jest niepotrzebne
for (int i=0; i<40; i++) {
std::cout << std::endl;
}
for (int i=0; i<line_ct; i++) {
// wypisujemy kolejną linię, a reszta się przesuwa sama automatycznie do góry
std::cout << lines[i] << std::endl;
sleep(400); // i czekamy trochę czasu
}
return 0;
}