Ditto is a multipurpose Pokémon that is very useful in breeding as it can be paired with any other Pokémon besides himself and the Unknown Pokémon. Unfortunately, you can only get Ditto in the Pokemon Sapphire game through an exchange (except for cheats). There is nothing strange about this, since each game has a certain Pokemon that is not found anywhere else.
Steps
Method 1 of 2: Sharing

Step 1. Get the Pokedex from Professor Birch
In every Pokémon game, there is at least one requirement that must be met before you can trade Pokémon with your friends. In the Pokemon Sapphire version, you must first obtain a Pokedex from Professor Birch in Littleroot Town.
Littleroot Town is located in the southwestern part of the Hoenn region. This is the city where most of the games in this region start

Step 2. Place at least two Pokémon in a group
To trade with another player, you must have at least two Pokémon in your group. The exchange is done on request or out of kindness. Many players are ready to help others - they exchange extra Pokémon that they come across. They exchange them online or give them to friends. However, it will be much easier for you to get Ditto if you have a Pokémon that others want.
- The Pokémon that can only be found in the Sapphire version and that are of the most value to players from other games include:
- Lotad
- Lombre
- Ludicolo
- Sablai
- Sewiper
- Lunaton
- Kyogr

Step 3. Buy or Borrow Link Cable for Gameboy Advance Console
Unlike newer versions of Pokemon games where you can exchange wirelessly, Sapphire's version requires a Link Cable.

Step 4. Find a friend with Ditto
Since the Link Cable can only be connected to Nintendo consoles like the Gameboy Advance, Gameboy Color, and even the first Gameboy, you need a player with a different version of the game / console to catch Ditto in order to trade. When you find a player willing to trade Ditto, connect your consoles with the Link Cable and get ready to trade.

Step 5. Make an exchange
Place the Pokémon you want to trade for Ditto into your group, then head to the nearest Pokémon Center. There you will find a secretary who will ask you if you want to trade Pokémon with another player. Follow the instructions and in a few moments Ditto will be in your group.
Method 2 of 2: Gameshark Cheat

Step 1. Purchase Gameshark for your console
To change the internal data in the Pokemon Sapphire game, you need to buy a device that will act as an interface. One of the most common devices used by players for this purpose is the GameShark. You can install it in the Gameboy Advance console, then insert the game cartridge into it and enter the cheat code to change the game data.

Step 2. Enter the master code
Before you can do anything, you must enter a master code, which is different from the code for obtaining Ditto. Enter the following master code:
9E6AC862 823AB7A8 46B7D9E4 A709E9E1

Step 3. Turn on the cheat code to catch Ditto
Now that you have entered the master code, you can enter a cheat code that will make Ditto appear in the game, while in the Sapphire version, wild Dittos are usually impossible to find. Here is the cheat code for Ditto to appear:
920A0644 C5A04841

Step 4. Log into the game and go to Route 101
When you turn on the master code and cheat code, you should be able to find Ditto on Route 101, which is north of Littleroot Town. Follow Route 101 until you meet Ditto.
Sometimes, in order for cheat codes to work, they must be entered several times. If you cannot find Ditto on Route 101, turn off the game and re-enter the required code. Some players note that they had to do this 12 times before they managed to catch the desired Pokémon

Step 5. Catch Ditto
Catch Ditto like you would catch any Pokémon you accidentally meet. You may need to weaken Ditto before you throw the Poké Ball and catch him. Be careful not to do too much damage, otherwise Ditto will pass out and you will have to start your quest again.