Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 17 odgovora
  • 4.279 pregleda

Najnovija ↓

od pozadi STRING 02.04.2012. u 19:24 · pre 177 meseci #1
Pozdrav, trebao bih malo pomoci. U zadatku treba da string unesen sa tastature, citam od pozadi...E to nije problem :D, to znam da napisem u paskalu, ali zadatak bi trebao da uradim u C#, pa me malo zeza, posto c# ne znam dovoljno...Kod iz paskala je ovaj:
Code:

    writeln('Unesi string ');
    readln(st);
    len:=length(st);
    for i:=len downto 1 do
         write(copy(st,i,1));
    repeat until keypressed;

Na internetu sam nasao kod za citanje stringa od nazad, i on radi naravno i sve ok, al cisto da vidim da li moze nesto na ovu foru..:D
A neko moje vidjenje u c#:
Code:

        string rec = Console.ReadLine();
        int len = rec.Length;
        for (int i=len;i>0;i++)
             Console.WriteLine(rec.Substring(len,0));     
Naravno ne radi...
Re: od pozadi STRING 02.04.2012. u 21:01 · pre 177 meseci #2
> Naravno ne radi...

Ako ideš od kraja ka početku ne pišeš i++, i proveri za Substring, ne znam šta je drugi parametar ali ako je dužina onda treba 1.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: od pozadi STRING 02.04.2012. u 22:21 · pre 177 meseci #4
Da to za i znam, to sam slucajno sada pogresio kada sam kucao...stavio sa i--...Mislio sam da treba 0 jer se pocinje brojati od 0...hvala :D

Sada probah to sa substing(len,1) nece, izbacuje mi neku gresi...Skontacu u cemu fazon..
Re: od pozadi STRING 02.04.2012. u 23:14 · pre 177 meseci #5
Evooo ga, uradio sam, :D
Code:

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string str1 = "marko";
            int len = str1.Length;
            for (int i=len;i>0;i--)
                Console.WriteLine(str1.Substring(i-1,1));
        }
    }
}

Hvala na pomoci
Re: od pozadi STRING 03.04.2012. u 01:34 · pre 177 meseci #7
Code:
           for (int i=len;i>0;i--)
                Console.WriteLine(str1.Substring(i-1,1));

==>>
Code:

           for (int i=len - 1;i>=0;i--)
                Console.WriteLine(str1.Substring(i,1));


Izgleda isto, ali jedna operacija (oduzimanje) manje (Intel CPP compiler bi direktno optimizovao u donji kod, ali ostali ne bi).
Re: od pozadi STRING 03.04.2012. u 17:23 · pre 177 meseci #8
Mhm, hvala na pomoci, krajnji program je ovaj, s tim sto me zanima jos jedna stvar:
Code:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace PisiOdNazad
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }


        private void label1_Click(object sender, EventArgs e)
        {
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string rec = textBox1.Text;
            int len = rec.Length;
            for (int i = len-1; i > -1; i--)
                MessageBox.Show(rec.Substring(i,1),"Rec Od Nazad");
        }
    }
}

Problem je sto mi svako slovo ispisuje posebno, u formi, dok u konzoli normalno jer ide samo write...Da li ima neki drugaciji vid ispisa u formi?
Re: od pozadi STRING 03.04.2012. u 18:05 · pre 177 meseci #9
Mislim da tema treba da se premesti u C# podforum.
Re: od pozadi STRING 03.04.2012. u 18:20 · pre 177 meseci #10
Smesti rezultat u promenljivu pa onda sa MessageBox.Show() na kraju svega prikazi rezultat.
Re: od pozadi STRING 03.04.2012. u 18:59 · pre 177 meseci #11
Code:
public String Reverse(String input){
StringBuilder sb = new StringBuilder();
for (int i=input.Length-1;i>=0;i--)
sb.Append(input[i]);
return sb.ToString();
}
Re: od pozadi STRING 03.04.2012. u 19:14 · pre 177 meseci #12
Ako radis sa framework-om 3.5 ili novijim: new string(x.Reverse().ToArray());
Uz pretpostavku da je x neka string promenljiva.
Potpis
Nebojsa Milanovic:
-Trumpa smatram vrhunskim predsednikom i voleo bih da živim u državi na čijem je on čelu
-Rusija ne laže, ne vodi osvajačke ratove
-Trump je svetla tačka u USA blatu
-Elon Musk, možda najpametniji i najtrezveniji Amerikanac
Re: od pozadi STRING 03.04.2012. u 19:48 · pre 177 meseci #13
Uz vasu pomoc, dosao sam do ovoga:
Code:

            string rec = textBox1.Text;
            int len = rec.Length;
            string rez = "";
            for (int i = len - 1; i >= 0; i--)
                 rez += rec.Substring(i, 1);
            MessageBox.Show(rez, "Rec od nazad");

Sve radi :D...Hvala

Citat:
Shadowed: Ako radis sa framework-om 3.5 ili novijim: new string(x.Reverse().ToArray());
Uz pretpostavku da je x neka string promenljiva.


==> Radim u Visual Studiu 2005, i mislim da je platforma 3.5, nisam siguran...
Re: od pozadi STRING 04.04.2012. u 09:00 · pre 177 meseci #15
Od pozadi string bez Reverse funkcije
Code (csharp):
private static string Reverse(string str)
        {
            char[] chars = str.ToCharArray();
            int j = chars.Length - 1;
            for (int i = 0; i < chars.Length /2; i++)
            {
                char temp = chars[i];
                chars[i] = chars[j];
                chars[j] = temp;
                j--;
            }
            return new string(chars);
        }
Potpis
http://i.imgur.com/V3feW.jpg
http://on.wsj.com/H9yjz6 -- India Graduates Millions, but Too Few Are Fit to Hire
Re: od pozadi STRING 04.04.2012. u 10:35 · pre 177 meseci #16
Citat:
AMD guy: Od pozadi string bez Reverse funkcije
Code (csharp):
private static string Reverse(string str)
        {
            char[] chars = str.ToCharArray();
            int j = chars.Length - 1;
            for (int i = 0; i < chars.Length /2; i++)
            {
                char temp = chars[i];
                chars[i] = chars[j];
                chars[j] = temp;
                j--;
            }
            return new string(chars);
        }


Za null or empty string ce da baca exception pa treba dodati:

Code:
if (String.IsNullOrEmpty(str)) return str;
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme