I know we can create problem-solution pairs using the exercise package but I am looking for something that is much simpler and similar to theorem and proof environments. I have solved this problem in two different ways.
Using 'theorem' and 'proof' environments
Here is one way to write a problem statement followed by a solution.
\documentclass{article}
\usepackage{amsthm}
\newtheorem*{theorem}{Problem}
\renewcommand{\qedsymbol}{}
\begin{document}
\begin{theorem}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc quis
volutpat tellus. Morbi dapibus dolor quis ligula porta eget adipiscing
nibh consectetur. Nulla fringilla dolor id elit vulputate ac posuere
ligula auctor.
\end{theorem}
\begin{proof}[Solution]
Ut at turpis felis. Donec venenatis fermentum volutpat.
Aliquam erat volutpat. Nulla fringilla adipiscing metus, eget porta
turpis facilisis vel. Nulla facilisi. Vivamus tristique ultricies
imperdiet. Cras non sapien erat, et tincidunt enim. Praesent vel ipsum
elit. Donec tincidunt, sem vitae scelerisque volutpat, diam dui
elementum est, quis ullamcorper libero sapien laoreet sem.
\end{proof}
\end{document}
The output is shown below.

Using custom 'problem' and 'solution' environments
This problem can also be solved by defining my own environments as follows.
\documentclass{article}
\newenvironment{problem}[1][Problem]
{\begin{trivlist} \item[\hskip \labelsep {\bfseries #1.}] \itshape}
{\end{trivlist}}
\newenvironment{solution}[1][Solution]
{\begin{trivlist} \item[\hskip \labelsep {\itshape #1.}]}
{\end{trivlist}}
\begin{document}
\begin{problem}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc quis
volutpat tellus. Morbi dapibus dolor quis ligula porta eget adipiscing
nibh consectetur. Nulla fringilla dolor id elit vulputate ac posuere
ligula auctor.
\end{problem}
\begin{solution}[Solution]
Ut at turpis felis. Donec venenatis fermentum volutpat.
Aliquam erat volutpat. Nulla fringilla adipiscing metus, eget porta
turpis facilisis vel. Nulla facilisi. Vivamus tristique ultricies
imperdiet. Cras non sapien erat, et tincidunt enim. Praesent vel ipsum
elit. Donec tincidunt, sem vitae scelerisque volutpat, diam dui
elementum est, quis ullamcorper libero sapien laoreet sem.
\end{solution}
\end{document}
The output is shown below.

I have three questions about this.
- What is the preferred way of solving this problem? Which one of the two methods above is a better way of solving this problem?
- Would you suggest any improvements or modifications to the
problemandsolutionenvironments I have defined in the second method? - The two outputs are very similar but they are not exactly similar. If you open the first output image and the second output image in two different tabs of the browser and switch between them, you can see some differences. Why do these differences occur?
- Different spacing between characters in the italicized text.
- Different vertical space between the problem and solution.

\theoremstyleprovided byamsthmpackage to format you block. – Sigur Sep 11 '12 at 21:53