Sprawdź się
Pokaż ćwiczenia:
Polecenie 1
Napisz kod w dowolnym języku programowania, rysujący kwadrat o podanych wymiarach, którego bokami będą cyfry zwiększające się od zera do (n / 2 + n % 2) - 1
od narożników ku środkom boków, a następnie zmniejszające się zgodnie ze schematem pokazanym poniżej. Długości boków mogą przyjmować wartości ze zbioru .
Przetestuj działanie programu dla boku o długości 10.
Specyfikacja problemu:
Dane:
n
– liczba naturalna, długość boku; liczba z przedziału
Wynik:
Program wyświetla kwadrat o podanej długości boku (n
).
Oto kilka przykładowych ramek:
Długość boku = 3
Linia 1. 010.
Linia 2. 1 1.
Linia 3. 010.
010
1 1
010
Długość boku = 4
Linia 1. 0110.
Linia 2. 1 1.
Linia 3. 1 1.
Linia 4. 0110.
0110
1 1
1 1
0110
Długość boku = 5
Linia 1. 01210.
Linia 2. 1 1.
Linia 3. 2 2.
Linia 4. 1 1.
Linia 5. 01210.
01210
1 1
2 2
1 1
01210
Długość boku = 6
Linia 1. 012210.
Linia 2. 1 1.
Linia 3. 2 2.
Linia 4. 2 2.
Linia 5. 1 1.
Linia 6. 012210.
012210
1 1
2 2
2 2
1 1
012210
Długość boku = 7
Linia 1. 0123210.
Linia 2. 1 1.
Linia 3. 2 2.
Linia 4. 3 3.
Linia 5. 2 2.
Linia 6. 1 1.
Linia 7. 0123210.
0123210
1 1
2 2
3 3
2 2
1 1
0123210
Długość boku = 8
Linia 1. 01233210.
Linia 2. 1 1.
Linia 3. 2 2.
Linia 4. 3 3.
Linia 5. 3 3.
Linia 6. 2 2.
Linia 7. 1 1.
Linia 8. 01233210.
01233210
1 1
2 2
3 3
3 3
2 2
1 1
01233210
Długość boku = 9
Linia 1. 012343210.
Linia 2. 1 1.
Linia 3. 2 2.
Linia 4. 3 3.
Linia 5. 4 4.
Linia 6. 3 3.
Linia 7. 2 2.
Linia 8. 1 1.
Linia 9. 012343210.
012343210
1 1
2 2
3 3
4 4
3 3
2 2
1 1
012343210
Długość boku = 19
Linia 1. 0123456789876543210.
Linia 2. 1 1.
Linia 3. 2 2.
Linia 4. 3 3.
Linia 5. 4 4.
Linia 6. 5 5.
Linia 7. 6 6.
Linia 8. 7 7.
Linia 9. 8 8.
Linia 10. 9 9.
Linia 11. 8 8.
Linia 12. 7 7.
Linia 13. 6 6.
Linia 14. 5 5.
Linia 15. 4 4.
Linia 16. 3 3.
Linia 17. 2 2.
Linia 18. 1 1.
Linia 19. 0123456789876543210.
0123456789876543210
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
8 8
7 7
6 6
5 5
4 4
3 3
2 2
1 1
0123456789876543210
Wymyśl pytanie na kartkówkę związane z tematem materiału.
Wymyśl pytanie na kartkówkę związane z tematem materiału.Java
Linia 1. public class Main otwórz nawias klamrowy.
Linia 2. static void wypiszSpacje otwórz nawias okrągły int n zamknij nawias okrągły otwórz nawias klamrowy.
Linia 3. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny n minus 2 średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 4. System kropka out kropka print otwórz nawias okrągły cudzysłów cudzysłów zamknij nawias okrągły średnik.
Linia 5. zamknij nawias klamrowy.
Linia 6. zamknij nawias klamrowy.
Linia 7. static void pionowe otwórz nawias okrągły int n zamknij nawias okrągły otwórz nawias klamrowy.
Linia 8. for otwórz nawias okrągły int i znak równości 1 średnik i otwórz nawias ostrokątny otwórz nawias okrągły n prawy ukośnik 2 plus n procent 2 zamknij nawias okrągły średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 9. System kropka out kropka print otwórz nawias okrągły i zamknij nawias okrągły średnik.
Linia 10. wypiszSpacje otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 11. System kropka out kropka println otwórz nawias okrągły i zamknij nawias okrągły średnik.
Linia 12. zamknij nawias klamrowy.
Linia 13. for otwórz nawias okrągły int i znak równości otwórz nawias okrągły n prawy ukośnik 2 zamknij nawias okrągły minus 1 średnik i zamknij nawias ostrokątny 0 średnik i minus minus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 14. System kropka out kropka print otwórz nawias okrągły i zamknij nawias okrągły średnik.
Linia 15. wypiszSpacje otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 16. System kropka out kropka println otwórz nawias okrągły i zamknij nawias okrągły średnik.
Linia 17. zamknij nawias klamrowy.
Linia 18. zamknij nawias klamrowy.
Linia 19. static void poziome otwórz nawias okrągły int n zamknij nawias okrągły otwórz nawias klamrowy.
Linia 20. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny otwórz nawias okrągły n prawy ukośnik 2 plus n procent 2 zamknij nawias okrągły średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 21. System kropka out kropka print otwórz nawias okrągły i zamknij nawias okrągły średnik.
Linia 22. zamknij nawias klamrowy.
Linia 23. for otwórz nawias okrągły int i znak równości n prawy ukośnik 2 minus 1 średnik i zamknij nawias ostrokątny znak równości 0 średnik i minus minus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 24. System kropka out kropka print otwórz nawias okrągły i zamknij nawias okrągły średnik.
Linia 25. zamknij nawias klamrowy.
Linia 26. zamknij nawias klamrowy.
Linia 27. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 28. int n znak równości 10 średnik.
Linia 29. poziome otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 30. System kropka out kropka println otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 31. pionowe otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 32. poziome otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 33. zamknij nawias klamrowy.
Linia 34. zamknij nawias klamrowy.
public class Main {
static void wypiszSpacje(int n){
for(int i = 0; i<n-2;i++){
System.out.print(" ");
}
}
static void pionowe(int n){
for(int i = 1; i<(n/2+n%2); i++){
System.out.print(i);
wypiszSpacje(n);
System.out.println(i);
}
for(int i = (n/2)-1; i>0; i--){
System.out.print(i);
wypiszSpacje(n);
System.out.println(i);
}
}
static void poziome(int n){
for(int i = 0; i<(n/2+n%2); i++){
System.out.print(i);
}
for(int i = n/2-1; i>=0; i--){
System.out.print(i);
}
}
public static void main(String[] args) {
int n = 10;
poziome(n);
System.out.println();
pionowe(n);
poziome(n);
}
}
Python
Linia 1. def wypiszSpacje otwórz nawias okrągły n zamknij nawias okrągły dwukropek.
Linia 2. for i in range otwórz nawias okrągły n minus 2 zamknij nawias okrągły dwukropek.
Linia 3. print otwórz nawias okrągły cudzysłów cudzysłów przecinek end znak równości cudzysłów cudzysłów zamknij nawias okrągły.
Linia 5. def pionowe otwórz nawias okrągły n zamknij nawias okrągły dwukropek.
Linia 6. for i in range otwórz nawias okrągły 1 przecinek int otwórz nawias okrągły n prawy ukośnik 2 plus n procent 2 zamknij nawias okrągły zamknij nawias okrągły dwukropek.
Linia 7. print otwórz nawias okrągły i przecinek end znak równości cudzysłów cudzysłów zamknij nawias okrągły.
Linia 8. wypiszSpacje otwórz nawias okrągły n zamknij nawias okrągły.
Linia 9. print otwórz nawias okrągły i zamknij nawias okrągły.
Linia 10. for i in range otwórz nawias okrągły int otwórz nawias okrągły n prawy ukośnik 2 zamknij nawias okrągły minus 1 przecinek 0 przecinek minus 1 zamknij nawias okrągły dwukropek.
Linia 11. print otwórz nawias okrągły i przecinek end znak równości cudzysłów cudzysłów zamknij nawias okrągły.
Linia 12. wypiszSpacje otwórz nawias okrągły n zamknij nawias okrągły.
Linia 13. print otwórz nawias okrągły i zamknij nawias okrągły.
Linia 15. def poziome otwórz nawias okrągły n zamknij nawias okrągły dwukropek.
Linia 16. for i in range otwórz nawias okrągły int otwórz nawias okrągły n prawy ukośnik 2 plus n procent 2 zamknij nawias okrągły zamknij nawias okrągły dwukropek.
Linia 17. print otwórz nawias okrągły i przecinek end znak równości cudzysłów cudzysłów zamknij nawias okrągły.
Linia 18. for i in range otwórz nawias okrągły int otwórz nawias okrągły n prawy ukośnik 2 zamknij nawias okrągły minus 1 przecinek minus 1 przecinek minus 1 zamknij nawias okrągły dwukropek.
Linia 19. print otwórz nawias okrągły i przecinek end znak równości cudzysłów cudzysłów zamknij nawias okrągły.
Linia 21. n znak równości 10.
Linia 22. poziome otwórz nawias okrągły n zamknij nawias okrągły.
Linia 23. print otwórz nawias okrągły zamknij nawias okrągły.
Linia 24. pionowe otwórz nawias okrągły n zamknij nawias okrągły.
Linia 25. poziome otwórz nawias okrągły n zamknij nawias okrągły.
def wypiszSpacje(n):
for i in range(n-2):
print(" ", end="")
def pionowe(n):
for i in range(1,int(n/2+n%2)):
print(i, end="")
wypiszSpacje(n)
print(i)
for i in range(int(n/2)-1, 0, -1):
print(i, end="")
wypiszSpacje(n)
print(i)
def poziome(n):
for i in range(int(n/2+n%2)):
print(i, end="")
for i in range(int(n/2)-1, -1, -1):
print(i, end="")
n = 10
poziome(n)
print()
pionowe(n)
poziome(n)
C++
Linia 1. kratka include otwórz nawias ostrokątny iostream zamknij nawias ostrokątny.
Linia 2. using namespace std średnik.
Linia 3. void wypiszSpacje otwórz nawias okrągły int n zamknij nawias okrągły.
Linia 4. otwórz nawias klamrowy.
Linia 5. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny n minus 2 średnik i plus plus zamknij nawias okrągły.
Linia 6. otwórz nawias klamrowy.
Linia 7. cout otwórz nawias ostrokątny otwórz nawias ostrokątny cudzysłów cudzysłów średnik.
Linia 8. zamknij nawias klamrowy.
Linia 9. zamknij nawias klamrowy.
Linia 10. void pionowe otwórz nawias okrągły int n zamknij nawias okrągły.
Linia 11. otwórz nawias klamrowy.
Linia 12. for otwórz nawias okrągły int i znak równości 1 średnik i otwórz nawias ostrokątny n prawy ukośnik 2 plus n procent 2 średnik i plus plus zamknij nawias okrągły.
Linia 13. otwórz nawias klamrowy.
Linia 14. cout otwórz nawias ostrokątny otwórz nawias ostrokątny i średnik.
Linia 15. wypiszSpacje otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 16. cout otwórz nawias ostrokątny otwórz nawias ostrokątny i otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik.
Linia 17. zamknij nawias klamrowy.
Linia 18. for otwórz nawias okrągły int i znak równości n prawy ukośnik 2 minus 1 średnik i zamknij nawias ostrokątny 0 średnik i minus minus zamknij nawias okrągły.
Linia 19. otwórz nawias klamrowy.
Linia 20. cout otwórz nawias ostrokątny otwórz nawias ostrokątny i średnik.
Linia 21. wypiszSpacje otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 22. cout otwórz nawias ostrokątny otwórz nawias ostrokątny i otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik.
Linia 23. zamknij nawias klamrowy.
Linia 25. zamknij nawias klamrowy.
Linia 26. void poziome otwórz nawias okrągły int n zamknij nawias okrągły.
Linia 27. otwórz nawias klamrowy.
Linia 28. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny n prawy ukośnik 2 plus n procent 2 średnik i plus plus zamknij nawias okrągły.
Linia 29. otwórz nawias klamrowy.
Linia 30. cout otwórz nawias ostrokątny otwórz nawias ostrokątny i średnik.
Linia 31. zamknij nawias klamrowy.
Linia 32. for otwórz nawias okrągły int i znak równości n prawy ukośnik 2 minus 1 średnik i zamknij nawias ostrokątny znak równości 0 średnik i minus minus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 33. cout otwórz nawias ostrokątny otwórz nawias ostrokątny i średnik.
Linia 34. zamknij nawias klamrowy.
Linia 35. zamknij nawias klamrowy.
Linia 36. int main otwórz nawias okrągły zamknij nawias okrągły.
Linia 37. otwórz nawias klamrowy.
Linia 38. int n znak równości 10 średnik.
Linia 39. poziome otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 40. cout otwórz nawias ostrokątny otwórz nawias ostrokątny endl średnik.
Linia 41. pionowe otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 42. poziome otwórz nawias okrągły n zamknij nawias okrągły średnik.
Linia 43. zamknij nawias klamrowy.
#include <iostream>
using namespace std;
void wypiszSpacje(int n)
{
for (int i = 0; i < n - 2; i++)
{
cout<<" ";
}
}
void pionowe(int n)
{
for (int i = 1; i < n / 2 + n % 2; i++)
{
cout << i;
wypiszSpacje(n);
cout << i << endl;
}
for (int i = n / 2 - 1; i > 0; i--)
{
cout << i;
wypiszSpacje(n);
cout << i << endl;
}
}
void poziome(int n)
{
for (int i = 0; i < n / 2 + n % 2; i++)
{
cout << i;
}
for (int i = n / 2 - 1; i >= 0; i--) {
cout << i;
}
}
int main()
{
int n = 10;
poziome(n);
cout << endl;
pionowe(n);
poziome(n);
}