1. W języku C++ napisz program wyprowadzający na ekran pierwszą i ostatnią literę wyrazu wprowadzonego z klawiatury.
2. Następnie zmodyfikuj program. Program powinien zamieniać miejscami pierwszą literę z ostatnią, gdy są różne, a następnie wyprowadzić na ekran zmieniony wyraz. W przypadku jednakowych liter powinien się wyświetlić odpowiedni komunikat.



Odpowiedź :

Odpowiedź

Program, który napisałam w C++ jest w pierwszym załączniku.

Jeżeli to mają być dwa różne programy, to do

  1. pomiń wiersze 16-22
  2. pomiń wiersz 15.

Wyniki przykładowych uruchomień w drugim.

Dla porównania taki sam program w języku Python w załączniku trzecim. Jakie są pomiędzy nimi różnice? Otóż program w C++ zadziała poprawnie tylko wtedy gdy pierwszy i ostatni znak będą znakami ASCII.

Wyjaśnienia

Nie wiem której platformy (środowiska, programu) używacie do C++, więc napisałam używając platformy  replit.

Jeśli chcesz aby mój program napisany w C++ poprawnie działał w  Code::Blocks,  Dev-C++  lub  Visual Studio,  musisz w wierszach 9 i 17 w funkcji  printf()  zamienić polskie litery na odpowiadające im litery ASCII.

Wygląda to mniej elegancko, ale na wszelki wypadek w 4. załączniku załączyłam wersję z  cin / cout  zamiast  getline / printf.  Różnica nie jest kosmetyczna. :) Wersja z 1. załącznika, jak i wersja w języku Python zaakceptują każdy tekst. Dlatego główna zmienna nazywa się tekst, a nie wyraz... W 4. zostawiłam tekst – aby się wygodnie porównywało, ale tak na prawdę w tej wersji zmienna powinna nazywać się wyraz. Różnica wynika z tego, że  cin  przeczyta tylko do pierwszej spacji po wyrazie.

Zobacz obrazek 0AB
Zobacz obrazek 0AB
Zobacz obrazek 0AB
Zobacz obrazek 0AB