[C++] zmiana rozmiaru i przesunięcie figury
Ostatnio zmodyfikowano 2013-11-21 20:48
lewica2 Temat założony przez niniejszego użytkownika |
[C++] zmiana rozmiaru i przesunięcie figury » 2013-11-20 21:15:27 Cześć, mam taki kod: #include "stdafx.h" #include <iostream> #include <conio.h> #include <Windows.h> #include <locale>
#define WYSOKOSC_KONSOLI 25 #define SZEROKOSC_KONSOLI 80
using namespace std;
void polskie_litery() { locale locpl( "Polish_Poland" ); locale::global( locpl ); cout.imbue( locpl ); cin.imbue( locpl ); }
void Prostokat(); const int Esq = 27; int main() { polskie_litery(); std::cout << "Witam w programie nr 57 \nNapisz program rysowania znakami ASCII figury." "Sam program powinien umożliwić:\n-wybór znaku kodu początkowego,\n-wszytanie wymiar ó w " "początkowych figury,\n-przesuwanie figury kursorami,\n-powiększanie oraz zmniejszanie figury za " "pomocą '+' oraz '-',\n-ogranicenie przesuwania figury oraz jej rozmiarów.\n\n \n\n\n"; int a, b; cout << "Podaj szerokość: [A]: "; cin >> a; if( a % 2 == 0 ) { do { cout << "\nLiczba " << a << " jest parzysta!" << endl; cout << "Wprowadź liczbę nieparzystą!" << endl; cout << "Podaj szerokość [A]: "; cin >> a; } while( a % 2 == 0 ); } cout << "Podaj wysokość [B]: "; cin >> b; system( "cls" ); cout << "Wybrałeś następujące wartości: " << endl; cout << "Szerokość: " << a << endl; cout << "Wysokość: " << b << endl; system( "PAUSE" ); system( "cls" ); int kod; while( true ) niesko ń czona p ę tla { cout << "Podaj kod znaku ASCII od 0 do 127: "; cin >> kod; wczytanie kodu znaku if( kod < 0 || kod > 127 ) zakresem cout << "Bledna wartosc.\n\n"; else inaczej break; przerwanie p ę tli } { system( "PAUSE" ); system( "cls" ); } { int i, j, x, y, x1, y1; char klawisz; x = 38; y = 10; do for( i = 1; i <= a; i++ ) cout <<( char ) kod; cout << endl; for( i = 1; i <= b - 2; i++ ) { cout <<( char ) kod; for( j = 1; j <= a - 2; j++ ) cout << " "; cout <<( char ) kod; cout << endl; } { for( i = 1; i <= a; i++ ) cout <<( char ) kod; cout << endl; } } switch( klawisz ) { case '+': { a = a + 2; b = b + 1; x--; y--; break; } case '-': { a = a - 2; b = b - 1; x++; y++; break; } case 75: { x--; break; } case 77: { x++; break; } case 72: { y--; break; } case 80: { y++; break; } case Esq: { break; } } while( klawisz != Esq ); return 0; }
I pojęcia nie mam dlaczego nie chce mi działać powiększenie i zmieniejszenie figury oraz jej przesunięcie. Mógłbym prosić o jakieś wskazówki? |
|
MrPoxipol |
» 2013-11-20 21:25:44 i?Zedytowałeś, ok. Jak możesz to odchudź program, aby były w nim tylko te funkcje, które sprawiają kłopoty, tzn. stwórz przykładowy program. |
|
lewica2 Temat założony przez niniejszego użytkownika |
» 2013-11-21 11:26:08 Nie wiem gdzie robie błąd... nie mogę ani zmieniać rozmiarów + i - ani przesuwać... switch( klawisz ) { case '+': { a = a + 2; b = b + 1; x--; y--; break; } case '-': { a = a - 2; b = b - 1; x++; y++; break; } case 75: { x--; break; } case 77: { x++; break; } case 72: { y--; break; } case 80: { y++; break; } case Esq: { break; } } while( klawisz != Esq );
Właśnie jakoś to mi się nie zgadza.... |
|
MrPoxipol |
» 2013-11-21 18:19:29 Zrób z tego jakiś mini program, czy coś, żeby można było skompilować i odpalić. |
|
lewica2 Temat założony przez niniejszego użytkownika |
» 2013-11-21 19:31:24 No własnie z tym mam problem bo nie da się tego skompilować i za diabła nie wiem czemu |
|
pekfos |
» 2013-11-21 19:45:14 I dopiero teraz o tym piszesz..? Podaj treść błędów. |
|
lewica2 Temat założony przez niniejszego użytkownika |
» 2013-11-21 20:48:15 To inaczej: to co zamieściłem w I poście da sie skompilować, nie wyświetla błędów, ale nie ma możliwości przesuwania figury skalowania etc... |
|
« 1 » |