Nizi imen
Špelca se zelo rada poigrava z imeni in priimki. Rada bi napisala program,
ki ji po vnosu izpiše ime in priimek v pravem vrstnem redu in obrnjeno. Pomagaj ji.
Namig
Program naj izgleda takole:
- Vnesemo niz za ime in nato še niz za priimek.
- Izpišemo ime in priimek kot taka.
- Obrnemo oba niza. Tu si pomagamo z zankama, v katerih iz obstoječih nizov sestavljamo obrnjene.
- Izpišemo obrnjeno ime in priimek.
Namig
Niz obrnemo s pomočjo zanke, katere števec teče od zadnjega znaka do prvega. Vmes gradimo niz, kateremu po vrsti dodajamo znake.
Rešitev (Java)
import javax.swing.JOptionPane;
public class NiziImen {
public static void main(String[] atr) {
// vhodni podatki
String ime = JOptionPane.showInputDialog("Vnesi ime: ");
String priimek = JOptionPane.showInputDialog("Vnesi priimek: ");
// izpisemo v pravilnem vrstnem redu
System.out.println(ime + " " + priimek);
String obrnjenIme = "";
String obrnjenPriimek = "";
int n = ime.length();
int m = priimek.length();
// obrnemo ime
for (int i = 0; i < n; i++) {
obrnjenIme += ime.charAt(n - i - 1);
}
// obrnemo priimek
for (int i = 0; i < m; ++i) {
obrnjenPriimek += priimek.charAt(m - i - 1);
}
// izpisemo
System.out.println(obrnjenIme + " " + obrnjenPriimek);
}
}
Rešitev (C#)
using System;
using System.Collections.Generic;
using System.Text;
namespace NiziImen {
class Program {
static void Main(string[] args) {
// vhodni podatki
Console.Write("Vnesi ime: ");
String ime = Console.ReadLine();
Console.Write("Vnesi priimek: ");
String priimek = Console.ReadLine();
// izpisemo v pravilnem vrstnem redu
Console.WriteLine(ime + " " + priimek);
String obrnjenIme = "";
String obrnjenPriimek = "";
int n = ime.Length;
int m = priimek.Length;
// obrnemo ime
for (int i = 0; i < n; i++) {
obrnjenIme += ime[n - i - 1];
}
// obrnemo priimek
for (int i = 0; i < m; ++i) {
obrnjenPriimek += priimek[m - i - 1];
}
// izpisemo
Console.WriteLine(obrnjenIme + " " + obrnjenPriimek);
Console.ReadKey();
}
}
}
Rešitev (Python)
#!C:/Python30/python
#-*-encoding: utf-8 -*-
# -*- coding: latin-1 -*-
'''
Created on 1.7.2009
@author: fajdigap
'''
# vhodni podatki
ime =input("Vnesi ime: ")
priimek = input("Vnesi priimek: ")
#izpisemo v pravilnem vrstnem redu
print ('%s %s' %(ime, priimek))
obrnjenIme = ""
obrnjenPriimek = ""
n = len(ime)
m = len(priimek)
#obrnemo ime
for i in range(n):
obrnjenIme = obrnjenIme + ime[n - i - 1]
#obrnemo priimek
for i in range(m):
obrnjenPriimek = obrnjenPriimek + priimek[m - i - 1]
#izpisemo
print ('%s %s' %(obrnjenIme, obrnjenPriimek))